UTNianos

Versión completa: [Pedido] [Diseño de Sistemas] Final 16/07/2016
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Páginas: 1 2
Para aquél que haya rendido en el dia de hoy, qué se tomó?
No tengo foto ni nada, pero te digo lo que me acuerdo.

Era muy largo, extremadamente, fue la queja principal.
El punto uno era una carilla y media de explicacion de una aplicacion que se queria desarrollar. Te hacian 2 preguntas de como solucionarias tal cosa, explicandolo del lado de cualidades de diseño, despues si se sacaba a un componente externo una funcionalidad, que mejoraba y que empeoraba.
Despues en el mismo punto te daba un diagrama de clases "basico", y vos tenias que hacerlo todo devuelta con todas las funcionalidades nuevas que se agregaban en el enunciado. Larguisimo y tedioso. Yo tuve que usar un observer y un par de strategy, escuche por ahi que alguno uso un Bridge pero ni idea.

Despues tenias que hacer el DER entero de todo ese diagrama de clases que vos generaste.
Despues te preguntaba unas cosas de arquitectura, que si tenia tasa de falla baja y malas conexiones que decisiones tomarias respecto de eso blabla.
Y otro punto que no me acuerdo.

La posta es que no era un final muy dificil, pero si muy largo y si no encarabas bien las cosas de una se te complica.
Es como dijo maxenz, fue un texto largo. Del cual solo usabas como mucho 5 renglones para resolver el todo.

Expando un poco lo que se dijo arriba:
El punto 1.1 decía como diseñarías el envió de mail. (Habia que usar un observer)
El 1.2 que pasa si ese envio de mail se hace llamando a una aplicacion externa, o si cambia de tecnologia (En vez de usar java mail se usaba otra app). Ventajas y desventajas. (Aca mande cualidades de diseño, y que el diseño creado arriba no depende de la tecnologia)
El 1.3 te mencionaban un renglo del texto que decia algo asi: "que un el indice de retraso que entregaba la lineas de bondi, en el futuro se iba a calcular en el sistema". Y te preguntaban que diseño figuraba en dicha oracion.
El 1.4 te daban el diagrama de clases, y vos tenias que agregar lo que decia el texto y lo del punto 1.1, 1.2 y 1.3. (yo puse un observer para el envio de mails, y un strategy para el 1.3.)
El 1.5 te decian que uno de los items que usaste en el strategy iba a venir con en archivos con diferentes formatos. Habia que proponer un diseño con eso.(yo le mande otro strategy)
El punto 2, era crear el DER. El mio termino siendo medio desastroso, con muchas tablas que relacionaban muchos con muchos.
y el punto 3, es el de arquitectura que menciono arriba.

Fue un final muy largo, yo tarde 2 horas y media. Pero algunos tardaron hasta 3 horas.

Habia mucha información que estaba de mas. Por ejemplo media carilla explicando como se usaba el objeto DATE en java, me imagino que lo podias usar si desarrollabas algo, pero para este final no se pidió nada de código.

Uno de los que esta en la cátedra nueva dijo que se iba a empezar a tomar mas seguido los temas de arquitectura
uff, q pijas@ lo q cuentan! cómo les fue maxenz rod77? espero llegar con la teoría para el sab próximo asi me la puedo sacar de encima!!!
Clave un 9.
Lo único que estaba super flojo era el tema de Arquitectura, ya que no lo habia estudiado, pero di una solución posible.

Despues habia estudiado bien:
-Cualidades de diseño (Apunte donde esta: Simplicidad, Facilidad de testing, Acoplamiento, Cohesión..) -> Este me sirvio para justificar la 1.2, y puse que si estaba en otra aplicación las ventajas serian: Simplicidad en mi código, ya que me tengo que olvidar de como enviar el mail. Facilidad de Testing, ya que solo tengo que hacerle llegar un mensaje al aplicativo. (entre otras cosas), como desventajas puse que como no tenia control sobre eso, no sabia si las cualidades ligadas a la tecnologia iban a ser correctas: Ej: Performance: ¿Puede enviar mil mails por segundo el aplicativo?

-Metodologias. Igualmente en este final no tomaron nada. Pero me sabia bien que hacian las metodologias: UP y Agile.

-Patrones. Identificar bien cuando se puede utilizar cada uno, utilice videos de youtube de como implementarlos y me sirvieron bastante. y utilice esta pag: migranitodejava.blogspot.com.es que tambien hay ejemplos.

-Code Smell (Creo que el apunte es algo de refactoring): Los estudie, por que a veces te dicen "que problemas encontras en este código" y con eso justificas "Ej: Esta clase es un middle man, ya que solo sirve para llamar a otra clase"

-Y estudie de los parciales resueltos que hay en la pagina, lamentablemente finales no hay, y los que hacia y buscaba la solución aca, nada que ver mi solución. De la primer parte estudie bien uno de algo de musica y otro de deseos. Casi siempre te dicen que algo se va a dividir o que hay que agregar distintas validaciones, ahi tenes que clavar un strategy. SI te dice que luego de una accion tenes que avisar a alguien, ahi usas un observer.

La verdad que es un final difícil de estudiar, ya que nunca sabes si lo que haces es lo que ellos quiere. A mi hasta que no me dieron la nota, no sabia si aprobaba.
Acordate que puede haber muchas soluciones posibles para los ejercicios, por eso te recomiendo que siempre aclares bien todo, por que si hay algo que no aclaras y te lo ponen mal, despues no podes ir y decirle "hice esto por esta otra cosa", y si pones algo de código aclarar que en el diseño no esta ligado a la tecnología que se utilice. Para que te des una idea escribi 4 hojas (en 1 estaba el DER y el diagrama de clases)

Espero que te sirva
7, pero lo mismo, hasta que no entregaron el final, ni idea si era un 1 o un 10. Focalizá mas que todo en patrones de diseño, es lo más difícil y lo que más les importa.
Hola!

Muchas Gracias!!!

Pregunta....de todos los patrones, ¿cuáles estudiaron ustedes? ¿cuales son los mas importantes?
(21-07-2016 00:56)dalepapa escribió: [ -> ]Hola!

Muchas Gracias!!!

Pregunta....de todos los patrones, ¿cuáles estudiaron ustedes? ¿cuales son los mas importantes?
Estos 3 te los tenes que saber seguros:
Strategy
Decorator
Observer

En un nivel mas abajo:
Composite
Builder

Y despues los otros que conocia pero que si los tenia que implementar se me iban a complicar eran:
Abstract Factory
Factory Method
Prototype
Singleton
Iterator
Command


En este post: http://www.utnianos.com.ar/foro/tema-apo...-diciembre

Hay una carpeta que estan los patrones divididos en PDF que explican cada uno, y da ejemplos. Yo lo estudie de ahi, y vi las implementaciones por videos, por que a veces las flechas no me quedaban demasiado claras.
Hola gente yo di ese mismo final y me fue mal le pedi al prof el examen para tener el enuciado, se los comparto.
Yo mismo lo deje en la fotocopiadora en la carpeta de sistemas en medrano.

Les dejo en estos links fotos de las hojas, eran dos y una doble carilla.

Hoja 1
http://i64.tinypic.com/w1wb5c.jpg
Hoja 1 2da carilla
http://i65.tinypic.com/241t9hh.jpg

Hoja 2
http://i65.tinypic.com/1z3qgyx.jpg

El final fue largisimo lo hicieron profes de la catedra vieja, era un quilombo entender el enunciado tardabas como 30 minutos, el patron yo use un strategy.

El resto de los puntos fue teoria y poner que cualidades tenia el sistema, luego uno de modelado de datos y el 3ro de arquitectura! jamas vi ese ultimo en mi cursada,
no entro nada de metodologias de desarrollo, malisimo! En teoria esta fecha lo va hacer algun prof de la catedra nueva, yo me vpoy a presentar este sabado ojala me vaya bien
damiancipolat gracias por compartir el enunciado, los vuelvo a subir para que queden alojados en el server del foro y no se pierdan para la posteridad !!
(19-07-2016 18:45)rod77 escribió: [ -> ]-Cualidades de diseño (Apunte donde esta: Simplicidad, Facilidad de testing, Acoplamiento, Cohesión..) -> Este me sirvio para justificar la 1.2, y puse que si estaba en otra aplicación las ventajas serian: Simplicidad en mi código, ya que me tengo que olvidar de como enviar el mail. Facilidad de Testing, ya que solo tengo que hacerle llegar un mensaje al aplicativo. (entre otras cosas), como desventajas puse que como no tenia control sobre eso, no sabia si las cualidades ligadas a la tecnologia iban a ser correctas: Ej: Performance: ¿Puede enviar mil mails por segundo el aplicativo?

-Code Smell (Creo que el apunte es algo de refactoring): Los estudie, por que a veces te dicen "que problemas encontras en este código" y con eso justificas "Ej: Esta clase es un middle man, ya que solo sirve para llamar a otra clase"

rod77
¿podrías, por favor, subir los apuntes de "Cualidades de Diseño"? Porque no los encuentro.
Ah, también los de "Code Smell"

Muchísimas Gracias!!!!!
Estan todos aca:
http://www.ddsutn.com.ar/material/apuntes-teoricos
Igual la organización de esa pagina es malisima.

El de cualidades esta en:
Diseño de sistemas
-Atributos de calidad de un diseño
Link:
https://docs.google.com/document/d/14Hdv...2jeunlr6jf

Y el de Code Smell esta en:
Diseño y metodologías de desarrollo
-Refactoring/manejo del cambio: Manejo del cambio: expansión y refactoring
Link:
https://docs.google.com/document/d/1cAje...LeSxk/edit
(02-08-2016 14:37)rod77 escribió: [ -> ]Estan todos aca:
http://www.ddsutn.com.ar/material/apuntes-teoricos
Igual la organización de esa pagina es malisima.

rod77

De toda esa lista de apuntes, ¿cuáles me recomendas estudiar si o si? (Además del de "Cualidades de Diseño" y "Code Smell").
Posta, que la organización es malisíma.
Disculpame que sea tan insistente y pesado, es que cursé con la vieja cátedra.

Muchísimas Gracias de nuevo!!!!!!!!!!!!
Para la parte de Metodologías, el de "Apunte de Diseño y metodologías"
https://docs.google.com/document/d/11PQO...qJNKs/edit

Para la parte de Arquitectura, la verdad que ni idea, es un tema que no estudie, pero fijate de ver todos los que estan en "Introducción al diseño de arquitectura".

Para la parte de Patrones de Diseño que se encuentran en "Modelado de Objetos" y en "Design patterns y buenas prácticas"
Estos apuntes te explican como usar dichos Patrones, asi que le daria una vuelta a todos.

Strategy y Composite estan en: "El proceso de diseño: ejercicio Manejo de Proyectos". Link: https://docs.google.com/document/d/1UhHV...dlOTo/edit
Decorator: en "Ejercicio Clientes de una tarjeta de crédito", Link: https://docs.google.com/document/d/1Ijz8...NX0oA/edit
Observer: en "Lista de correo: Observer," link: https://docs.google.com/document/d/1h8Cc...CL56I/edit
Patrones Creacionales (Factor Method, Abstract Factory, Builder y Prototype) en https://docs.google.com/document/d/1UhHV...dlOTo/edit

Los que dice "ejercicio Firewall" y "Ejercicio Microprocesador", los lei, pero me parecieron ejercicios complicados aca se ven el pattern "Command"

Igualmente agarre el listado de patrones y buscalos por youtube y fijate como se implementan, eso me sirvio un monton.

----

La verdad que si venís de la cátedra vieja, es medio choto leerse todo eso, igualmente tu final lo corrige el profesor con el cual que cursaste, si no esta mas podes poner quien queres que te corrija, y creo que es preferible alguien de la cátedra vieja.
Rod77, me salvaste!!!!!!!!!!!!
Páginas: 1 2
URLs de referencia