Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Contenidos
Contenidos
Necesidad del anlisis y diseo a n Anlisis y diseo: modelizacin de problemas a n o Abstraccin: clase-objeto o Interfaz: utilizacin de los objetos o Introduccin a UML o
1. Planteamiento del problema La tienda de libros Se desea llevar a cabo una aplicacin capaz de gestionar libros, lo que o supone poder adquirir nuevos libros y modicar el precio de los libros a la venta. Para cada libro se dispone del t tulo, el autor, la fecha de publicacin, o la editorial y el precio. Adems, la tienda desea ofrecer a sus compradoa res informacin sobre los autores de los libros, incluyendo, adems de su o a nombre completo, su pgina web y su correo electrnico. a o La tienda trabaja directamente con las distintas editoriales, por lo que necesita tambin disponer de la direccin, el telfono y la persona de e o e contacto de cada editorial, teniendo en cuenta que estos datos pueden cambiar.
2. Extraer una lista de nombres y otra de verbos Se desea llevar a cabo una aplicacin capaz de gestionar libros, lo que o supone poder adquirir nuevos libros y modicar el precio de los libros a la venta. Para cada libro se dispone del t tulo, el autor, la fecha de publicacin, o la editorial y el precio. Adems, la tienda desea ofrecer a sus compradoa res informacin sobre los autores de los libros, incluyendo, adems de su o a nombre completo, su pgina web y su correo electrnico. a o La tienda trabaja directamente con las distintas editoriales, por lo que necesita tambin disponer de la direccin, el telfono y la persona de e o e contacto de cada editorial, teniendo en cuenta que estos datos pueden cambiar.
Nombres aplicacin? o libros precio t tulo autor fecha de publicacin o editorial compradores nombre completo pgina web a correo electrnico o direccin o telfono e persona de contacto
10
11
Libro
titulo autor fechaPublicacion editorial precio adquirir() modificarPrecio()
Autor
nombre web correo ofrecerNombre() ofrecerWeb() ofrecerCorreo()
Editorial
nombre direccion telefono personaContacto cambiarDireccion() cambiarTelefono() cambiarPersonaContacto()
12
7. Comprobar el diseo con el planteamiento inicial n Comprobar cada uno de los pasos con el planteamiento del problema Asegurarse de que las decisiones tomadas a lo largo del proceso no estn en contradiccin con nada de lo expresado en el planteamiento a o del problema Plantear posibles formas de completar el diseo. Ej: Inclusin de la n o fecha como otra clase? En caso de duda, consultar con el cliente.
Abstraccin: clase-objeto o
13
Abstraccin: clase-objeto o
Denicin de objeto: Un objeto es una entidad signicativa en un o determinado dominio de aplicacin. Ej: una persona, un cliente de o una tienda virtual, una cuenta corriente de un banco,... Caracter sticas de los objetos: Los objetos deben ser distinguibles y tener identidad por s mismos. Ej: Pa s/Espaa. n Descripcin de los objetos: Los objetos contienen valores que los o describen e identican. Ej: Juan Prez (nombre, apellido, dni). e Comportamiento de los objetos: Los objetos se relacionan con el exterior a travs de mensajes que reciben y a los que responden de e distintas maneras. Ej: ingresar/sacar dinero de una cuenta.
14
Denicin de clase: Una clase describe un grupo de objetos que tienen o propiedades similares y ser comportan de manera similar. Caracter sticas de las clases: Actan como plantilla o tipo para un u conjunto de objetos. Un objeto es una instanciacin de una clase. Ej: o coche/revista de coches. Atributos: Son los valores comunes a todos los objetos de una clase. Cada atributo tiene asociado un tipo. Ej: cilindrada (cc). Mtodos: Denen el comportamiento que tendrn los objetos instancia e a de la clase. El comportamiento de cada objeto concreto var Ej: a. sacar dinero de una cuenta con/sin dinero.
15
Relacin de asociacin: Es una relacin estructural que describe un o o o conjunto de enlaces o conexiones entre objetos. Atributo o Asociacin: La diferencia entre la modelizacin como atrio o buto o como asociacin depende, en la mayor de los casos, del plano a teamiento del problema. Ejemplo: 1. Libro: titulo, autor, nombreAutor, webAutor, correoAutor, nombreEditorial, direccionEditorial, telefonoEditorial, personaContactoEditorial, precio. 2. Libro: titulo, autor, editorial, precio. Autor : nombre, web, correo. Editorial: nombre, direccin, telfono, personaContacto. o e Cuestiones: Las editoriales tienen miles de libros. Los autores tienen ms de un libro. Cmo consultar todos los libros de un determinado a o autor? Qu modelo es mejor ? e
c 2002 Laboratorio DEI Anlisis y Dise o de Algoritmos a n
16
Introduccin a UML o
17
Introduccin a UML o
UML = Unied Modeling Language Lenguaje utilizado para la modelizacin o Nace como unicacin de lenguajes anteriores o Incluye modelado estructural, de comportamiento y arquitectnico. o Notacin utilizada para la asignatura: o
nombre Libro titulo autor precio Crear() asignarPrecio() obtenerPrecio() asociacion Persona nombre web correo obtenerNombre() obtenerWeb() obtenerCorreo()
atributos
metodos