Академический Документы
Профессиональный Документы
Культура Документы
Introduccin
Presentar los principios de un soporte metodolgico. Proponer una metodologa sencilla de soporte al desarrollo con UML. p g p Ilustrar el inters de UML para el desarrollo.
Anlisis y diseo
La finalidad de la actividad de desarrollo es proporcionar una solucin computacional a un problema planteado por un usuario (cliente). Tambin precisamos que el cdigo no era ms que la materializacin de la solucin, mientras que el modelo contena toda la informacin que facilitaba de una forma u otra la construccin de la solucin. Despus de esta introduccin a las vistas esenciales de un modelo UML (estructural, comportamental y funcional) de una aplicacin, nos queda por presentar la forma en que nosotros debemos utilizar cada una de estas partes con el fin de realizar nuestro objetivo: la realizacin de la solucin a partir del problema. Para lograr este objetivo, la ingeniera de software defini desde hace varios aos dos fases principales a realizar: p p el anlisis del problema y el diseo.
Estas dos partes del modelo UML son suficientes para modelar las necesidades (requisitos) del cliente expresados en el borrador de condiciones condiciones. Sin embargo, con el fin de precisar bien los vnculos de coherencia entre estas dos partes, utilizamos tambin la parte comportamental, como nosotros lo mostramos anteriormente. i Esta parte permite en efecto vincular los casos de uso con las interacciones; estas mismas vinculadas a las clases.
(C) A. Snchez L. 2011 5
Diseo de la solucin, I ,
La fase de diseo consiste en modelar una solucin que resuelve el problema modelado en la fase de anlisis. Contrariamente a lo que podramos creer, proporcionar una solucin computacional no es lo ms difcil: es solo un problema algortmico. Por el contrario es complicado proporcionar la mejor solucin al problema ya contrario, problema, que; a un problema dado, corresponden a menudo varias soluciones. Tomaremos el ejemplo del algoritmo de seleccin. Existen varias maneras de clasificar elementos (iterativa burbuja quicksort etc) (iterativa, burbuja, quicksort, etc). Todas estas soluciones resuelven el problema de seleccin desde un punto de vista algortmico, pero no son muy equivalentes, y sabemos muy bien que algunas son mejores que otras. Para diferenciar las soluciones, se conocen bien dos criterios: la complejidad en espacio y la complejidad en tiempo. p p j p Estos criterios permiten establecer una clasificacin de las soluciones en funcin de la cantidad de memoria que ocupan y del tiempo que realizan el tratamiento.
(C) A. Snchez L. 2011 7
Diseo de la solucin, II ,
Otros criterios, ms adaptados del mundo industrial y del paradigma orientado a objetos, permiten efectuar otras clasificaciones de las soluciones. Citamos, en particular, la capacidad de mantenimiento, la portabilidad, la robustez, la rapidez de desarrollo, el costo de desarrollo, etc. Esta lista no exhaustiva de criterios pone de manifiesto que la construccin de una solucin ptima dista mucho de ser trivial. Para ser ms pragmtico, y tambin para simplificar la dificultad de la fase de diseo, diseo consideramos en el marco de este curso que un diseo ptimo es un diseo que maximiza la independencia respecto a las plataformas tcnicas y minimiza la dependencias entre los distintos objetos de la aplicacin. Dado que el nivel conceptual permite definir un diseo independiente de las plataformas de ejecucin. Vimos por otro lado en los temas anteriores, que era posible minimizar las p q p relaciones de dependencia entre los paquetes del nivel fsico.
10
12
Relaciones de resolucin
13
Resumen
Segn nuestra visin esquemtica del modelo UML de una aplicacin, consideraremos que: El anlisis corresponde a un nivel de abstraccin <<requisito>>. El diseo corresponde a dos niveles de abstraccin: el nivel conceptual y el nivel fsico fsico. El nivel conceptual especifica los distintos componentes de la aplicacin. El nivel fsico especifica la forma en que estos componentes se implementan en la l f l plataforma tcnica ( i (Java por ejemplo). j l ) Existe relaciones de resolucin entre el nivel requisito y el nivel conceptual. Estas relaciones se expresan con ayuda de comentarios en el nivel conceptual. Existe relaciones de abstraccin entre el nivel conceptual y el nivel fsico. Estas relaciones se expresan con ayuda de la relacin de abstraccin entre las clases. Gracias a estas relaciones entre todas las partes del modelo UML y las fases de anlisis y diseo, es posible completar nuestra visin esquemtica de un ciclo de desarrollo con UML como se ilustra a continuacin
14
15
Mtodo de desarrollo, I ,
Sabemos que un mtodo de desarrollo debe responder a las siguientes preguntas:
Cundo realizar una actividad? Quin debe realizar una actividad? Q Qu hacer en una actividad? Cmo realizar una actividad?
Ahora que conocemos todas las partes del modelo UML de una aplicacin, sabemos lo que propone UML para responder a las preguntas del que y el cmo. Podemos por lo tanto proponer una respuesta relativamente minimalista a las preguntas d cuando y d l que, y as proponer un mtodo d d t de d del t d de desarrollo con ll UML. Nuestro objetivo consiste en terminar nuestra presentacin de UML presentando los principios bsicos de un mtodo de desarrollo. Nuestro mtodo no debe considerarse como un verdadero mtodo, aplicable en el medio industrial, sino ms bien como un mtodo pedaggico. , p g g
(C) A. Snchez L. 2011 16
Mtodo de desarrollo, II ,
Para responder a la pregunta del que, consideramos que existen esencialmente dos personas que participan en el desarrollo de una aplicacin. El cliente es la persona que tiene necesidad de la aplicacin, y el desarrollador es la persona que realiza la aplicacin. En el marco de este curso consideramos que el equipo de desarrollo slo est curso, formado por desarrolladores. Por lo tanto, la redaccin del borrador de condiciones, que especifica todos los requisitos, requisitos est a cargo del cliente y todas las actividades de desarrollo cliente, relativas al anlisis y al diseo estn a cargo del equipo de desarrollo. Para responder a la pregunta de cuando, consideramos que basta con proponer un orden de realizacin de cada una de las nueve partes del modelo UML. Hacemos la eleccin de proponer un orden a partir del borrador de condiciones y terminar con la produccin de la aplicacin final. p p As, nuestro mtodo que se limita a preconizar un recorrido en la realizacin de las partes del modelo, es un mtodo denominado top-down.
17
18
19
20
21
22
23
25
26
30