jueves, 3 de noviembre de 2011

Aprendiendo UML - Hora 13: Diagramas de Distribución


El diagrama de distribución del UML ilustra la forma en que luce un sistema físicamente cuando sea conjugado. Un sistema consta de nodos, donde cada nodo se representa por un cubo. Una línea asocia a dos cubos y simboliza una conexión entre ellos. Los tipos de nodos son procesador (que puede ejecutar un componente) y dispositivo (que no lo puede hacer). Los dispositivos por lo general interactúan con el mundo.

Como puede imaginar, los diagramas de distribución son útiles para modelar redes.

Taller
Cuestionario
1. ¿Cómo representa a un nodo en un diagrama de distribución?
2. ¿Qué tipo de información puede aparecer en un nodo?
3. ¿Cuáles son los dos tipos de nodos?
4. ¿De qué forma funciona una red token-ring?

Ejercicios
1. Imagine a su PC como un conjunto de nodos. Dibuje un diagrama de distribución que incluya a su gabinete, monitor, impresora y cualquier otro periferico. Incluya cualquier estereotipo necesario y comportamientos para clarificar la información.
2. Es posible conectar una red a otra. Una forma de hacerlo es conectar a cada red con un enrutador y a cada uno de ellos como un circuito de LAN a LAN. Dibuje un diagrama de distribución de una pequeña red Token-ring que se conecte a una pequeña red thin ethernet.

Fecha de Entrega  10 de noviembre de 2011.
Producto:
Cuestionarios y Formato digital enviado por correo electrónico por grupo a oscar.orrego09@gmail.com con el asunto Metodología - TP13 y en el cuerpo del mensaje los integrantes del grupo.

miércoles, 2 de noviembre de 2011

Aprendiendo UML - Hora 12: Diagrama de Componentes

El diagrama de Componentes UML es un conglomerado de figuras de los diagramas que ya han visto. En lugar de representar una entidad conceptual como una clase o estado, un diagrama de componentes representa a un elemento real; un componente de software. Estos componentes se encuentran en las computadoras, no en la mente del analista.

Un Componente puede accederse a través de su interfaz, una colección de operaciones. La relación entre un componente y su interfaz se llama realización. Un componente puede acceder a los servicios de otro. Cuando lo hace, utiliza una interfaz de importación. El componente que realiza la interfaz con tales servicios proporciona una interfaz de exportación.

La representación de un componente es un rectángulo con otros dos rectángulos pequeños sobre puestos en su lado izquierdo. Puede representar una interfaz de dos formas: la primera es un rectángulo que contiene información de la interfaz  y se conecta con el componente mediante una línea discontinua con una punta de flecha representada por un triángulo sin relleno. La otra es un pequeño círculo conectado al componente con una línea continua. Ambos tipos de conexión pretenden mostrar una relación de realización.

Taller
Cuestionario
1. ¿Cuáles son los tres tipos de componentes?
2. ¿Cómo llamaría a la relación entre un componente y su interfaz?
3. ¿Cuáles son las dos formas de representar a esta relación?
4. ¿Qué es una interfaz de exportación?. ¿Qué es interfaz de importación?

Fecha de Entrega  4 de noviembre de 2011.
Producto:
Cuestionarios y Formato digital enviado por correo electrónico por grupo a oscar.orrego09@gmail.com con el asunto Metodología - TP12 y en el cuerpo del mensaje los integrantes del grupo

Aprendiendo UML - Hora 11: Diagrama de Actividades

El diagrama de Actividades del UML es muy parecido a un diagrama de flujo. Muestra los pasos, puntos de decisión y bifurcaciones. Este tipo de diagrama es útil para representar las operaciones de un objeto y los procesos de negocios.
El diagrama de actividades es una extensión del diagrama de estados. Los diagramas de estados destacan los estados y representan actividades como flechas entre los estados. Los de actividad se enfocan en las actividades. Cada actividad se representa como un rectángulo con esquinas redondeadas, más ovalados en apariencia que la representación de un estado. El diagrama de actividades utiliza los mismos símbolos que el de estados para los puntos de inicio y de final.
Cuando una ruta se divide en dos o más, tal dispersión se representa con una línea gruesa perpendicular a las rutas, mismas que se reúnen en una línea similar. Dentro de un diagrama de secuencias se puede mostrar una señal cuya transmisión se representa con un pentágono convexo, y la recepción con uno cóncavo.
En un diagrama de actividades, puede representar las actividades de acuerdo con la responsabilidad asignada. Esto lo haría con marcos de responsabilidad, estos son segmentos paralelos que corresponden a los responsables de realizar cada tarea.
Es posible combinar al diagrama de actividades con símbolos de otros diagramas con lo que producirían diagramas hibridos.

Taller
Cuestionario
1.¿Cuáles son las dos formas de representar a un punto de decisión?
2.¿Qué es un marco de responsabilidad?
3.¿Cómo representaría la transmisión y recepción de una indicación?.

Ejercicios
1. Cree un diagrama de actividad que muestre el proceso que realizará al encender un auto. Empiece desde colocar la llave, finalice con el motor en funcionamiento y tome en cuenta todo lo que haría si el motor no arrancara de inmediato.
2. Cree un diagrama de actividad que muestre el proceso de extraer dinero de un cajero automático.

Fecha de Entrega  4 de noviembre de 2011.
Producto:
Cuestionarios y Formato digital enviado por correo electrónico por grupo a oscar.orrego09@gmail.com con el asunto Metodología - TP11 y en el cuerpo del mensaje los integrantes del grupo.

miércoles, 19 de octubre de 2011

Aprendiendo UML - Hora 10: Diagrama de Colaboraciones

Un diagrama de colaboraciones es otra forma de presentar la información en un diagrama de secuencias. Ambos tipos de diagramas son semánticamente equivalentes y se recomienda usar ambos cuando construya el modelo de un sistema. El diagrama de secuencias se organiza de acuerdo al tiempo, y el de colaboración de acuerdo al espacio.
El diagrama de colaboraciones muestra las asociaciones entre objetos, así como los mensajes que pasan de un objeto a otro. El mensaje se representa con una flecha junto a la línea de asociación, y una etiqueta numerada que muestra el contenido del mensaje. El número representa el turno del mensaje en  la secuencia.
Las condiciones se representan como antes, mediante la colocación de la instrucción condicional entre corchetes. Para representar un ciclo "mientras", anteceda al chorchete izquierdo con un asterisco.
Algunos mensajes provienen de otros. El esquema de numeración de las etiquetas representa esto de forma muy similar a los manuales técnicos que muestran sus encabezados y subtítulos: con un sistema de numeración que utiliza puntos decimales para representar los niveles de anidamiento.
Los diagramas de colaboración le permiten modelar varios objetos receptores en una clase, ya sea que los objetos reciban o no los mensajes en un orden especifico. También podrá representar objetos activos que controlen el flujo de los mensajes, así como los mensajes que se sincronizan con otros.

Taller
Cuestionario
1. ¿Cómo representa a un mensaje en un diagrama de colaboraciones?
2. ¿Cómo mostraría información secuencial en un diagrama de colaboraciones?
3. ¿Cómo mostraría los cambios de estado?
4. ¿Qué se entiende por la "equivalencia semántica" de dos tipos de diagramas?

Ejercicios
1. En el ejemplo de la maquina de gaseosas, sólo mostré un diagrama de colaboraciones equivalente al diagrama de secuencias de instancia de la situación "importe incorrecto". Cree un diagrama de colaboraciones que corresponda al diagrama de secuencias genérico de la hora 9 para el caso de uso "Comprar Gaseosa". Esto es, agregue la situación "Gaseosa Agotada" al diagrama de colaboraciones siguiente:


Fecha de Entrega  27 de octubre de 2011.
Producto:
Cuestionarios y Formato digital enviado por correo electrónico por grupo a oscar.orrego09@gmail.com con el asunto Metodología - TP10 y en el cuerpo del mensaje los integrantes del grupo

Aprendiendo UML - Hora 9: Diagrama de Secuencias

El diagrama de secuencia UML agrega la dimensión del tiempo a las interactividades de los objetos. En el diagrama, los objetos se colocan en la parte superior y el tiempo avanza de arriba hacia abajo. La línea de vida de un objeto desciende de cada uno de ellos. Un pequeño rectángulo de la línea de vida de un objeto representa una activación (la ejecución de una de las operaciones del objeto). Puede incorporar los estados de un objeto colocándolos junto a su línea de vida.
Los mensajes (simples, sincrónicos y asincrónicos) son flechas que conectan a una línea de vida con otra. La ubicación del mensaje en la dimensión vertical representará el momento en que sucede dentro de la secuencia. Los mensajes que ocurren primero están más cerca de la parte superior del diagrama, y los que ocurren después cerca de la parte inferior.
Un diagrama de secuencias puede mostrar ya sea una instancia (un escenario) de un caso de uso, o puede ser genérico e incorporar todos los escenarios de un caso de uso. Los diagramas de secuencias genéricos con frecuencia dan la oportunidad de representar instrucciones condicionales y ciclos "mientras".
Cuando una secuencia incluya la creación de un objeto, lo representará como un rectángulo de la forma acostumbrada. Su posición en la dimensión vertical representarán el momento en que se creó.
En ciertos sistemas, una operación puede invocarse a sí misma. A esto se le conoce como recursividad. Se representa con una flecha que sale de la activación hacia si misma, y un pequeño rectángulo sobrepuesto a la activación.

Taller
Cuestionario
1. Defina mensaje sincrónico y mensaje asincrónico.
2. En un diagrama de secuencias genérico ¿cómo representaría el control de flujo implícito en una instrucción condicional?
3. ¿Cómo representaría el control de flujo implícito en una instrucción de ciclo "mientras"?
4. En un diagrama de secuencias ¿cómo representaría a un objeto recíen creado?

Ejercicios
1. Cree un diagrama de secuencias de instancias que muestre lo que ocurre cuando envía con éxito un fax. Esto es, modele las interactividades entre objetos en el mejor escenario del caso de uso "enviar fax" de una máquina de fax. Incluya los objetos de la máquina que envía, la que recibe, el fax y un "intercambio" central que encause a los faxes y a las llamadas telefónicas.
2. Cree un diagrama de secuencias genérico que incluya escenarios infructuosos (línea ocupada, error de la máquina que envía), así como del mejor escenario indicado en el ejercicio 1.

Fecha de Entrega  26 de octubre de 2011.
Producto:
Cuestionarios y Formato digital enviado por correo electrónico por grupo a oscar.orrego09@gmail.com con el asunto Metodología - TP9 y en el cuerpo del mensaje los integrantes del grupo

jueves, 6 de octubre de 2011

Aprendiendo UML - Hora 8: Diagramas de Estados

Los objetos en los sistemas modifican sus estados como respuestas a suceso y al tiempo. El diagrama de estados de UML captura estos cambios de estados. Un diagrama de estados se enfoca en los cambios de estado en un solo objeto. Un rectángulo de vértices redondondeados representa a un estado, y una línea continua con una punta de flecha representa una transición de un estado a otro.
El símbolo del estado contiene el nombre del mismo y puede tener variables y actividades del estado. Una transición puede suceder como respuesta a un suceso desencadenado, e implicar una respuesta o acción. Una transición trambién puede ocurrir por la actividad en un estado: una transición que ocurre de esta forma se conoce como transición no desencadenada. Finalmente, una transición puede ocurrir cuando se cumple una condicion particular, o condición de seguridad.
En ocasiones, un estado consta de subestados. Los subestados pueden ser secuenciales (ocurrir uno después del otro) o concurrentes (ocurrir al mismo tiempo). Un estado que consta de subestados se conoce como estado compuesto. Un estado histórico indica que un estado compuesto recordará su subestado cuando el objeto trascienda de este estado compuesto. Un estado histórico puede ser superficial o profundo. Tales términos son propios de los subestados anidados. Un estado histórico superficial recuerda sólo el subestado principal. Un estado histórico profundo recuerda todos los niveles de los subestados.
Cuando un objeto envía un mensaje que desencadena una transición en el diagrama de estados de otros objeto, tal mensaje es una señal. Una señal es, por sí misma, un objeto, y podrá crear una jerarquía de herencia de las señales.
Es necesario contar con los diagramas de estados porque facilitan la comprensión de los objetos de un sistema a los analistas, diseñadores y desarrolladores. Los desarrolladores, en particular, deben saber cómo se supone que se comportarán los objetos, dado que serán quienes tengan que establecer estos comportamientos en el software. No es suficiente implementar un objeto: los desarrolladores tienen que hacer que tal objeto haga algo.

Taller
Cuestionarios
1. ¿De qué forma difiere un diagrama de estados de uno de clases, de objetos o de casos de uso?.
2. Defina los siguientes términos: transición, suceso y acción.
3. ¿Qué es una transición no desencadenada?
4. ¿Cuál es la diferencia entre los subestados secuenciales y los concurrentes?

Ejercicios
1. Suponga que diseñará una tostadora. Cree el diagrama de estados que controle los estados del pan en la tostadora. Incluya los sucesos desencadenados, acciones y condiciones de seguridad necesarios.
2. Cada vez que un objeto envíe una señal, se creará un objeto Señal y será transmitido. En Windows, hay varias señales posibles a partir de la GUI. Suponga que la señal (el tipo de señal que envíe a Windows) sea una clase. (¿Qué tipo de clase es?). Cree un diagrama de clases de las posibles señales y muestre toda la herencia inherente.
3. La figura 8.7 le muestra los subestados concurrentes dentro del estado Operación de la GUI. Dibuje un diagrama del estado del Protector de pantalla que incluya los subestados concurrentes.

Fecha de Entrega  13 de octubre de 2011.
Producto:
Cuestionarios y Formato digital enviado por correo electrónico por grupo a oscar.orrego09@gmail.com con el asunto Metodología - TP8 y en el cuerpo del mensaje los integrantes del grupo

Aprendiendo UML - Hora 7: Diagramas de Caso de Uso

El caso de uso es una poderosa herramienta para obtener los requerimientos funcionales. Los diagramas de casos de uso agregan mayor poder: debido a que facilitan la comunicación entre los analistas y los usuarios, y entre los analistas y los clientes. En un diagrama, el símbolo del caso de uso es una elipse. El símbolo de un actor es una figura. Una línea asociativa conecta a un actor con el caso de uso.
Los casos de uso están, por lo general, dentro de un rectángulo que representan el sistema.
La inclusión se representa por una línea de dependencia con un estereotipo <<incluir>>. La extensión se representa por una línea de dependencia con un estereotipo <<extender>>. Las otras dos relaciones entre casos de uso son generalización, en que un caso de uso hereda el sentido y acciones de otro, y el agrupamiento, mismo que organiza un conjunto de casos de uso. La generalización se representa por la misma línea que muestra la herencia entre clases. El agrupamiento se representa por el icono del paquete.
Los diagramas de casos de uso figuran como parte importante en el proceso de análisis. Se empieza con entrevistas con los clientes para obtener diagramas de clases. Éstos proporcionan una base para entrevistar a los usuarios. Tales entrevistas dan por resultado un diagrama de casos de uso que muestra los requerimientos funcionales del sistema. Los diagramas resultantes de caso de uso darán los fundamentos para el diseño y desarrollo.

Taller
Cuestionario:
1. Mencione dos ventajas de crear un caso de uso.
2. Describa la generalización y el agrupamiento, las relaciones entre los casos de uso que ha visto durante esta hora. Mencione dos situaciones en las que Ud.  agruparia los casos de uso.
3. ¿Cuáles son las similitudes entre las clases y los casos de uso?. ¿Cuáles son las diferencias?.

Ejercicios
1. Bosqueje el diagrama de un modelo de casos de uso para un control remoto de una TV. Asegurese de incluir todas las funciones del control remoto como casos de uso para su modelo.
2. En el segundo ejercicio de la hora anterior indicó a los actores y casos de uso de un negocio de cómputo. Esta vez, dibuje un diagrama de casos de uso de alto nivel con base en el trabajo que realizó en tal ejercicio. Luego, genere un modelo de casos de uso para al menos uno de los casos de uso de alto nivel. En su trabajo, intente incorporar las relaciones <<incluir>> o <<extender>> que sean necesarias.

Fecha de Entrega  13 de octubre de 2011.
Producto:
Cuestionarios y Formato digital enviado por correo electrónico por grupo a oscar.orrego09@gmail.com con el asunto Metodología - TP7y en el cuerpo del mensaje los integrantes del grupo

miércoles, 28 de septiembre de 2011

Aprendiendo UML - Hora 6: Introducción a los Casos de Uso

El caso 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 llamada actor (una persona, un componente de hardware u otro sistema). Un caso de uso debería dar por resultado algo de valor ya sea pra el actor que lo inició o para otro.
Es posible volver a utilizar casos de uso. Una forma ("inclusión") es utilizar los pasos de un caso de uso como parte de la secuencia de pasos de otro caso de uso. Otra forma ("extensión") es crear un nuevo caso de uso mediante la adición de pasos a un caso de uso existente.
La entrevista directa con los usuarios es la mejor técnica para generar casos de uso. Cuando se crea un caso de uso, es importante destacar las condiciones para inciar el caso de uso, y los resultados obtenidos como consecuencia del mismo.
Hará las entrevistas a los usuarios después de entrevistar a los clientes y generar una lista de prospectos de clases. Esto le dará un fundamento en la terminología que utilizará para hablar con los usuarios. Es una buena idea entrevistar a un grupo de usuarios. El objetivo es generar un conjunto de casos de usos y todos los actores posibles.

Taller
Esta hora se basó en teoría más que en el UML. En este taller, el objetivo será comprender los conceptos teóricos y aplicarlos en diversos contextos.
Cuestionario
1. ¿Cómo se llama a la entidad que inicia un caso de uso?
2. ¿Qué entiende con "incluir un caso de uso"?
3. ¿Qué se entiende con "extender un caso de uso"?
4. ¿Un caso de uso es lo mismo que un escenario?
Ejercicios
1. En el caso del ejemplo de la maquina de gaseosas, cree otro caso de uso que incluya a los casos de uso "exhibir el interior" y "cubrir el interior".
2. Los casos de uso pueden ayudarle a analizar un negocio y un sistema. Imagine un gran comercio de equipos de cómputos que venda hardware, periféricos y software. ¿Quiénes serian los actores?. ¿Cuáles serían algunos de los principales casos de uso?. ¿Cuáles serían algunos de los escenarios dentro de cada caso de uso?.

Fecha de Entrega  06 de octubre de 2011.
Producto:
Cuestionarios y Formato digital enviado por correo electrónico por grupo a oscar.orrego09@gmail.com con el asunto Metodología - TP6 y en el cuerpo del mensaje los integrantes del grupo

jueves, 15 de septiembre de 2011

Aprendiendo UML - Hora 5: Agregación, composición, interfaces y realización

Para completar sus nociones de clases y la forma en que se conectan, es necesario comprender algunas relaciones adicionales. Una agregación establece una asociación para conformar un todo: una clase "todo" se genera de clases que la componen. Un componente en una agregación puede ser parte de más de un todo. Una composición es una conformación  muy íntimamente ligada con la agregación en el sentido de que un componente de una composición puede ser parte solamente de un todo. La representación del UML de las agregaciones es similar a la representación de las composiciones. La línea de asociación que uno la parte con un todo tiene un rombo. en una agregación, el rombo no está lleno, en tanto que en una composición sí lo está.

Un diagrama de contexto enfoca la a tención en una clase especifica dentro de un sistema. un diagrama de contexto de composición es como un mapa detallado de un mapa mayor. Muestra un diagrama de clases anidado dentro de un gran símbolo rectangular de clase. Un diagrama de contexto de sistema muestra la forma en que el diagrama de clases compuestas se relacionan con otros objetos del sistema.

Una realización es una asociación entre una clase  y una interfaz, una colección de operaciones que cierta cantidad de clases podrá utilizar. Una interfaz se representa como una clase sin atributos. Para distinguirla de una clase cuyos atributos hayan sido omitidos del diagrama, el estereotipo <<interfaz>> aparecerá por encima del nombre de la interfaz. Otra posibilidad es la de anteceder el nombre de la interfaz con una "I" mayúscula. La realización se representa en el UML mediante una línea discontinua con una punta de flecha en forma de triángulo sin rellenar que conecta a la clase con la interfaz. Otra forma para representar una realización es con una línea continua que conecte a una clase con un pequeño circulo, para que el círculo se interprete como la interfaz.

En términos de visibilidad, todas las operaciones en una interfaz son públicas, de modo que cualquier clase podrá utilizarlas. Los otros dos niveles de visibilidad son protegido (la funcionalidad se extiende a las clases secundarias de aquella que contiene los atributos y operaciones) y privado (atributos y operaciones que se pueden utilizar sólo dentro de la clase que los contiene). Un signo de suma (+) denota a la visibilidad pública, el símbolo de número (#) la protegida y el guión (-) la privada.

El ámbito es otro aspecto de los atributos y operaciones. En un àmbito de instancia, cada objeto de una clase cuenta con su propio valor en un atributo u operación, en un ámbito de archivador, sólo hay un valor para un atributo u operacción en particular a través de un conjunto de objetos de una clase. Los objetos que no estén en este conjunto no podrán acceder al valor contenido en el ámbito de archivador.

Taller
El cuestionario y los ejercicios verificarán y fortalecerán su conocimiento respecto al tema de las agregaciones, composiciones, contextos e interfaces.

Cuestionario
1. ¿Cuál es la diferencia entre una agregación y una composición?
2. ¿Qué es la realización?
3. Mencione los tres niveles de visibilidad y describa lo que significa cada uno de ellos.

Ejercicios
1. Cree un diagrama de contexto de composición de una revista. Tome en cuenta la tabla de contenido, la editorial, los artículos y las columnas. Luego, cree un diagrama de contexto del sistema que muestre a la revista junto con el suscriptor y el comprador en el puesto de revistas.
2. En la actualidad, el tipo más popular de GUI es la interfaz WIMP (ventanas, iconos, menús y puntero, por sus siglas en ingles). Dibuje un diagrama de clases de la interfaz WIMP, y haga uso de todo el conocimiento adecuado del UML que ha adquirido hasta ahora. Además de las clases indicadas en las siglas, incluya los elementos relacionados como las barras de desplazamiento y el cursos, así como cualquiera de las otras clases necesarias.

Fecha de Entrega  22 de septiembre de 2011.
Producto:
Cuestionarios y Formato digital enviado por correo electrónico por grupo a oscar.orrego09@gmail.com con el asunto Metodología - TP5 y en el cuerpo del mensaje los integrantes del grupo

jueves, 8 de septiembre de 2011

Aprendiendo UML - Hora 4: Uso de las relaciones


Sin las relaciones, un modelo de clases sería poco menos que una lista de cosas que representarían  un vocabulario. Las relaciones le muestran cómo se conectan los términos del vocabulario entre sí para dar una idea de la sección del mundo que se modela. La asociación es la conexión conceptual fundamental entre clases. Cada clase en una asociación juega un papel, y la multiplicidad especifica cuántos objetos de una clase se relacionan con un objeto de la clase asociada. Hay muchos tipos de multiplicidad. Una asociación se representa como una línea entre los rectángulos de clases con los papeles y multiplicidades en cada extremo. Al igual que una clase, una asociación puede contener atributos y operaciones.

Una clase puede heredar atributos y operaciones de otra clase. La clase heredada es secundaria de la clase principal que es de la que se hereda. Descubrirá la herencia cuando encuentre clases en un modelo inicial que tenga atributos y operaciones en común. Las clases abstractas sólo se proyectan como bases de herencia y no proporcionan objetos por sí mismas. La herencia se representa como una línea entre la clase principal y la secundaria, con un triángulo sin rellenar que se adjunto (y apunta a) la clase principal.

En una dependencia, una clase utiliza a otra. El uso más común de una dependencia es mostrar que una firma en la operación de una clase utiliza a otra clase. Una dependencia se proyecta como una línea discontinua que reúne a las dos clases en la dependencia, con una punta de flecha en forma de triángulo sin relleno que adjunta (y apunta a) ala clase de la que se depende.

Taller
El cuestionario y los ejercicios se han diseñado para reafirmar sus conocimientos del UML en el área de las relaciones. Cada pregunta y ejercicio requiere que Ud. piense en la simbología del modelado que ha aprendido y la aplique a una situación.

Cuestionarios
1. ¿Cómo representaría la multiplicidad?
2. ¿Cómo descubrirá la herencia?
3. ¿Què es una clase abstracta?
4. ¿Cuál es el efecto de un calificador?

Ejercicios
1. Tome como base el modelo del Basquet de la Hora 3, y agregue vínculos que expresen las relaciones que ha visto en esta hora. Si conoce el juego de basquet, siéntase con libertad para agregar los vínculos que representen su conocimiento.
2. De acuerdo con un viejo refran "Un abogado que se defiende a sí mismo, tiene por cliente a un tonto". Cree un modelo que refleje esta pieza de sabiduría.

Fecha de Entrega  15 de septiembre de 2011.
Producto:
Cuestionarios y Formato digital enviado por correo electrónico por grupo a oscar.orrego09@gmail.com con el asunto Metodología - TP4 y en el cuerpo del mensaje los integrantes del grupo.

jueves, 1 de septiembre de 2011

Aprendiendo UML - Hora 3: Uso de la Orientación a Objetos


Un rectángulo es, en el UML, la representación simbólica de una clase. El nombre, atributos, operaciones y responsabilidades de la clase se colocan en áreas delimitadas dentro del rectángulo. Puede utilizar un estereotipo para organizar las listas de atributos y operaciones y además abreviar una clase al mostrar sólo un subconjunto de sus atributos y operaciones. Esto hace un diagrama de clases menos complejo.

Podrá mostrar el tipo de un atributo, su valor inicial y enseñar los valores con que funciona una operación, así como sus tipos. En una operación, esta información se conoce como firma.

Para reducir la ambigüedad en la descripción de una clase agregue restricciones. El UML también le permite indicar mayor información respecto a una clase mediante notas adjuntas al rectángulo que la representa.

Las clases representan el vocabulario de un área del conocimiento. Las conversaciones con el cliente o un experto en el área dejarán entrever los sustantivos que se convertirán en clases en un modelo, y los verbos se transformarán en operaciones. Podrá utilizar un diagrama de clases como una forma de estimular al cliente a que diga más respecto a sus áreas y que ponga en evidencia cierta información adicional.

Taller
Para repasar lo que ha aprendido respecto a la orientación a objetos, intente responder a las siguientes preguntas.

1. ¿Cómo representa una clase en el UML?
2. ¿Qué información puede mostrar un símbolo de clase?
3. ¿Qué es una restricción?
4. ¿Para qué adjuntaría una nota a un símbolo de clase?

Ejercicios
1. He aquí una breve (e incompleta) descripción del futbol:
Un equipo de futbol consiste en 11 jugadores de cancha (1 arquero y el resto jugadores de cancha que, en ocasiones, se organizan en cuatro defensas, tres centrales y tres delanteros). Los jugadores pueden usar cualquier parte del cuerpo (excepto las manos) para introducir la pelota en el arco del equipo contrario. La única excepcion a esta regla la tiene el arquero, quien puede utilizar también las manos para jugar con la pelota, pero sólo dentro del área de meta. El campo de juego es un rectángulo de una longitud máxima de 120 m y mínima de 90 m; y con un ancho no mayor de 90m, ni menor de 45. Para partidos internacionales, la longitud será de 110 m como máximo y 100 como mínimo; y un ancho no superior a 75 m ni inferior a 64. En cualquier caso, deberá ser mayor la longitud que el ancho. El campo de juego se dividirá en dos mitades transversales de igual tamaño. El centro de la cancha será marcado con un punto visible, alrededor del cual se trazará una circunferencia de 9.15 m de radio. El objetivo del juego es pasar la pelota a los delanteros, quienes están mejor preparados para meter la pelota en el arco. El arquero es la última línea de defensa que intentará bloquear, con cualquier parte de su cuerpo, los tiros de sus opositores. Cada vez que evita un gol, es decir, que la pelota no entra en el arco, habrá salvado su equipo. Cada gol equivale a un punto. El juego dura 90 minutos, divididos en dos períodos de 45 minutos cada uno.

Use la información anterior para crear un diagrama como el de la figura 3.15. Si ud. conoce más de futbol de lo que he descrito, agregue tal información a su diagrama.

2. Si ud. conoce más del basquet de lo que hay en la figura 3.15, agregue la información a tal diagrama.

Fecha de Entrega8 de septiembre de 2011.

Producto:
Cuestionarios y Formato digital enviado por correo electrónico por grupo a oscar.orrego09@gmail.com con el asunto Metodología - TP3 y en el cuerpo del mensaje los integrantes del grupo.

miércoles, 24 de agosto de 2011

Aprendiendo UML - Hora 2: Orientación a Objetos


La orientación a objetos es un paradigma que depende de algunos principios fundamentales. Un objeto es una instancia de una clase. Una clase es una categoría genérica de objetos que tienen los mismos atributos y acciones. Cuando crea un objeto, el área del problema en que trabaje determinará cuántos de los atributos y acciones debe tomar en cuenta.
La herencia es un aspecto importante de la orientación a objetos, un objeto hereda los atributos y operaciones de su clase. Una clase también puede heredar atributos y acciones de otra.
El polimorfismo es otro aspecto importante, ya que especifica que una acción puede tener el mismo nombre en diferentes clases y cada clase ejecutará tal operación de forma distinta.
Los objetos ocultan su funcionalidad de otros objetos y del mundo exterior. Cada objeto presenta una interfaz para que otros objetos (y personas) puedan aprovechar su funcionalidad.
Los objetos funcionan en conjunto mediante el envío de mensajes entre ellos. los mensajes son peticiones para realizar operaciones.
Por lo general, los objetos se asocian entre sí y esta asociación puede ser de diversos tipos. Un objeto en una clase puede asociarse con cualquier cantidad de objetos distintos en otra clase.
La agregación es un tipo de asociación. un objeto agregado consta de un conjunto de objetos que lo componen y una composición es un tipo especial de agregación. En un objeto compuesto, los componentes sólo existen como parte del objeto compuesto.

Taller
Para repasar lo que ha aprendido de la orientación a objetos, intente responder a algunas preguntas y realizar los siguientes ejercicios.

Preguntas y Respuestas
Pregunta: Usted dijo que la orientación a objetos ha tomado por asalto al mundo del software. ¿Qué no hay algunas aplicaciones importantes que no están orientadas a objetos?
RespuestaSi, y se conocen como sistemas "heredados" (programas que en muchos casos son ejecutados para mostrar su época). La orientación a objetos ofrece diversas ventajas, como la reusabilidad y un rápido periodo de desarrollo. Por tales razones, muy probablemente verá las nuevas aplicaciones (y las versiones rediseñadas de varias aplicaciones antiguas) escritas bajo el esquema de la orientación a objetos.

Cuestionario
1. ¿Qué es un objeto?.
2. ¿Cómo trabajan los objetos en conjunto?
3. ¿Qué establece la multiplicidad?
4. ¿Pueden asociarse dos objetos entre sí en más de una manera?

Ejercicios
En esta unidad no incluí ejercicios. Verán algunos en las siguientes Unidades.

Fecha de Entrega
1 de septiembre de 2011.

Producto:
Cuestionarios y Formato digital enviado por correo electrónico por grupo a oscar.orrego09@gmail.com con el asunto Metodología - TP2 y en el cuerpo del mensaje los integrantes del grupo.

jueves, 18 de agosto de 2011

Aprendiendo UML - Hora 1: Introducción al UML


Introducción

El desarrollo de sistemas es una actividad humana. Sin un sistema de notación fácil de comprender, el proceso de desarrollo tiene una gran cantidad de errores.
El UML es un sistema de notación que se ha convertido en estándar en el mundo de desarrollo de sistemas. Es el resultado del trabajo hecho por Grady Booch, James Rumbaugh e Ivar Jacobson. El UML está constituido por un conjunto de diagramas, y proporciona un estándar que permite el analista de sistemas generar un anteproyecto de varias facetas que sean comprensibles para los clientes, desarrolladores y todos aquellos que estén involucrados en el proceso de desarrollo. Es necesario contar con todos esos diagramas dado que cada uno se dirige a cada tipo de persona implicada en el sistema.
Un Modelo UML indica qué es lo que supuestamente hará el sistema, mas no cómo lo hará.

Taller
Ya se ha iniciado en el UML. Ahora deberá reafirmar su conocimiento de esta gran herramienta al responder algunas preguntas y realizar los ejercicios.

Preguntas y Respuestas
  1. He visto que se refiere al Lenguaje Unificado de Modelado como “UML” y como “el UML”. ¿Cuál es el correcto?
R: Los creadores del lenguaje prefieren el uso de “el UML”.

  1. Ha indicado que el UML es adecuado para los analistas o para comenzar el desarrollo de programas. No obstante, el diagrama de distribución no parece ser algo muy útil en la fase de análisis en el desarrollo de un sistema. ¿No sería más apropiado para una fase posterior?
R: En realidad nunca será demasiado pronto para empezar a pensar en la distribución (u otras cuestiones que, tradicionalmente, se dejan para fases posteriores del desarrollo). Aunque es cierto que el analista se interesa por hablar con los clientes y usuarios, en la fases tempranas del proceso el analista debería pensar en los equipos y componentes que constituirían el hardware del sistema. En algunas ocasiones, el cliente dicta esto; en otras, el cliente desea una recomendación del equipo de desarrollo. Ciertamente, un arquitecto de sistemas encontrará útil al diagrama de distribución.

  1. Ha mencionado que es posible hacer diagramas híbridos. ¿UML, perdón el UML, impone limitaciones respecto a los elementos que podrá combinar en el diagrama?
R: No. El UML no establece límites, no obstante, con frecuencia se da el caso de que un diagrama contenga un tipo de elemento. Podrá colocar símbolos de clases en un diagrama de distribución, pero ello no será muy útil.


Cuestionario
  1. ¿Por qué es necesario contar con diversos diagramas en el modelo de un sistema?
  2. ¿Cuáles diagramas le dan una perspectiva estática de un sistema?
  3. ¿Cuáles diagramas le dan una perspectiva dinámica de un sistema (esto es, muestran el cambio progresivo)?

Ejercicios
  1. Realizar un resumen y esquema de la unidad uno.
  2. Suponga que creará un sistema informático que jugará ajedrez con un usuario. ¿Cuáles diagramas UML serían útiles para diseñar el sistema?. ¿Por qué?
  3. Para el sistema del ejercicio anterior que ha completado, liste las preguntas que formularia a un usuario potencial y porque las haría?

Fecha de Entrega
25 de agosto de 2011.

Producto:
Cuestionarios y Formato digital enviado por correo electrónico por grupo a oscar.orrego09@gmail.com con el asunto Metodología y en el cuerpo del mensaje los integrantes del grupo.

Bienvenidos...

Este espacio nos permitirá intercambiar las actividades propuestas, los ejercicios, comentarios, mensajes de la parte practica de Metodología de Sistemas.

Como primera actividad deberán publicar un comentario indicando los grupos grupos participantes y enviar un email a oscar.orrego09@gmail.com

Comenzamos...