You are on page 1of 72

Anlisis de Sistemas

1.- Resumen del Proceso Unificado 2.- Lenguaje Unificado de Modelado (UML) 3.- Levantamiento de Requisitos UML : Casos de Uso 4.- Anlisis del Sistema UML 4.1.- Diagrama de Actividades 4.2.- Diagrama de Clases (modelo conceptual)

Diagrama de Clases
-Piense en las cosas que nos rodean, es posible que muchas de esas cosas tengan atributos (propiedades) y que realicen determinadas acciones. -Podramos imaginar cada una de esas acciones como un conjunto de tareas. -Nos daremos cuenta tambin que las cosas naturalmente se albergan en categoras (automviles, mobiliario, lavadoras), tales categoras las llamaremos CLASES.

Diagrama de Clases
Se podra decir que una clase es una categora o grupo de cosas que tienen atributos y acciones similares. -EJEMPLO: La fig. muestra la clase Lavadora: El rectngulo superior representa a la clase. Se divide en tres reas. El superior contiene el nombre, el rea central contiene los atributos y el inferior las acciones.

Diagrama de Clases
-EJEMPLO:
Lavadora Marca Modelos NumeroSerie capacidad Agregar ropa Agregar detergente Secar ropa

Diagrama de Clases
-Un Objeto es una instancia de clase (Una entidad que tiene valores especficos de los atributos y acciones). Su lavadora, por ejemplo, podra ser tener la marca LG, el modelo sx3220, el nmero de serie GL567774 y una capacidad de 7kg.

Diagrama de Clases
- Como Objeto de la clase persona contamos
con los siguientes atributos: Peso, altura, edad (puede imaginar muchos ms). Tambin realizamos las siguientes tareas, comer, dormir, leer, escribir, hablar, trabajar, etc.

Diagrama de Clases
Si tuviramos que crear un sistema que manejara informacin acerca de las personas (como nmina o un sistema para departamento de RRHH), sera probable que incorporramos algunos de sus atributos y acciones en nuestro software.

Diagrama de Clases
Conceptos: La Orientacin a Objetos considera no slo los atributos y acciones; tambin considera aspectos como abstraccin, herencia, polimorfismo y encapsulacin. Otros aspectos importante a ver son las asociaciones y agregaciones.

Diagrama de Clases
Conceptos: Abstraccin: Se refiere a quitar propiedades y acciones de un objeto para dejar slo aquellas que sean necesarias. Herencia: Un objeto es una instancia de una clase; Un objeto tiene todas las caractersticas de la clase de la que proviene. Cada objeto de la clase hereda los atributos y operaciones.

Diagrama de Clases
Conceptos: Una Clase tambin puede heredar de otra. La lavadoras, refrigerador, hornos de microondas, tostadores, planchas, son clases que forman parte de una clase genrica llamada Electrodomsticos. Un electrodomstico cuenta con atributos de interruptor, cable y operaciones de encendido y apagado.

Diagrama de Clases
Conceptos: Cada una de las clases electrodomsticos hereda los mismos atributos; por ello, si sabe que algo es electrodomstico, entonces sabr que cuenta con atributos y acciones que definen esa clase

Diagrama de Clases

Diagrama de Clases
Polimorfismo: Una operacin tiene el mismo nombre en diferentes clases. Por ejemplo podr abrir una puerta, una ventana , un peridico, un regalo, etc. Y funcionar distinto en cada una.

Diagrama de Clases
Encapsulamiento: Los objetos encapsulan lo que hacen, es decir, ocultan la funcionalidad interna de sus operaciones, de otro objetos y del mundo exterior.

Diagrama de Clases
Diagrama de Clases. Muestra entidades del mundo real, elementos de anlisis y diseo o clases de implementacin y sus relaciones. Representan la base para otros diagramas de UML. Soportan los requisitos funcionales y servicios que el sistema debe proporcionar a los usuarios finales (clientes).

Diagrama de Clases
Se utilizan para: Modelar vocabulario de (abstracciones del sistema). un sistema

Modelar un esquema conceptual (describir el sistema en trminos de los conceptos que lo definen y sus relaciones, independiente del SW) y lgico (descripcin dependiente del SW que se desprende el esquema anterior) de Bases de Datos.

Diagrama de Clases
Los diagramas de clases estn formados por Clases Atributos (Propiedades) Mtodos (Operaciones) Relaciones Asociacin Herencia Composicin

Diagrama de Clases
Formato grfico de una clase
Nombre de la Clase

Zona de Atributos (puede omitirse) Zona de Mtodos (puede omitirse)

Diagrama de Clases
Un diagrama de clases est formado por varios rectngulos de este tipo conectados por lneas que muestran la manera en que las clases se RELACIONAN entre si.

Diagrama de Clases
Asociaciones Binaria: Cuando una clase se conecta entre s de forma conceptual, esta conexin se denomina asociacin.

Asociacin Binaria

Diagrama de Clases
Relaciones: Conexiones entre elementos. Asociacin.
Una asociacin se forma al unir dos clases con una lnea Puede tener nombre y se coloca sobre la lnea (se lee de izq. a derecha y suele ser un verbo) Puede tener los roles que juega cada clase en la asociacin

Diagrama de Clases
Relaciones: Conexiones entre elementos.

Semnticas de los Datos

Caractersticas de los Datos y sus Relaciones


Semntica de los Datos: se refiere al significado de las relaciones que tienen los datos entre s. Cada modelo de datos tiene sus restricciones en cuanto a su capacidad de representar una realidad, dependiendo de los tipos de semnticas que puede abarcar.

Caractersticas de los Datos y sus Relaciones


Tipos de Semnticas:
Cardinalidad. Grado. Dependencia Existencial Tiempo. Unicidad. Herencia. Agregacin. Categorizacin.

Caractersticas de los Datos y sus Relaciones


a) Cardinalidad (multiplicidad): se refiere al nmero de entidades con que otra entidad se relaciona. Tipos de Asociaciones:
1 : 1 (uno a uno) 1 : N (uno a muchos) M : N (muchos a muchos)

Caractersticas de los Datos y sus Relaciones


Asociacin 1:1: sucede cuando una entidad X se relaciona slo con otra entidad, bajo determinada asociacin, y esta ltima slo lo hace con X. Empleado Cnyuge

Caractersticas de los Datos y sus Relaciones


Asociacin 1:N: se presenta cuando una entidad X se relaciona con varias entidades, bajo determinada asociacin, pero cada una de stas slo lo hace con X. Persona
1 *

Automvil

Caractersticas de los Datos y sus Relaciones


Asociacin M:N: ocurre cuando una entidad X se relaciona con varias entidades, bajo determinada asociacin, y cada una de stas, a su vez, se relaciona con X y, probablemente, otras entidades ms del mismo tipo de X. Curso
* *

Alumno

Caractersticas de los Datos y sus Relaciones


b) Grado: se define como el nmero de tipos o clases de entidades que participan en una asociacin. Tipos de Asociaciones:
Unaria. Binaria. Ternaria. n-aria.

Caractersticas de los Datos y sus Relaciones


Asociacin Unaria: es una asociacin que slo considera un tipo de entidades que se relaciona consigo mismo.
1..*

Empleado

Caractersticas de los Datos y sus Relaciones


Asociacin Binaria: relacin conformada por dos tipos de entidades entre s.

Persona

Automvil

Diagrama de Clases
Ejemplos:
Esposo 1
Esta Casado con

Esposa

Maestro

Ensea

Estudiante

Cajero

Atiende

1..*

Cliente

Casa

Tiene

0,1

Chimenea

Diagrama de Clases
Asociacin.
Puede tener Multiplicidad (*, 0..1, 1..*) Puede tener restricciones entre { } Se puede indicar el sentido de la lectura

Indica que los objetos de una clase estn conectados con los de otra.
Multiplicidad (Cardinalidad). Roles de las clases en la asociacin.
Vendedor Cliente RUT 1..* 1..1 nombreCliente apellidoCliente direccionCliente emailCliente

Smbolo 0..1 1..1 0..* 1..* M..N

Significado Cero o Uno Slo 1 Muchos Uno o Varios Mnimo M hasta N (M < N)

codigo nombre apellido fono direccion

Notaciones para Modelos de Datos

Notaciones para Modelos de Datos


Diagrama de Clases UML
Asociaciones: multiplicidad

Asociacin Binaria Asociacin Unaria

Asociacin Ternaria

Notaciones para Modelos de Datos


Diagrama de Clases UML
* Asignatura *

Prerequesito

Pedido
1.*

Conduce
1 Conductor o...4

Producto

1.*

1.*

Bodega

Orden de despacho

Asociacin Unaria

Asociacin Ternaria

Diagrama de Clases
Clase Asociacin Pueden asociarse diversas clases con una en particular. Una clase asociacin modela los atributos y operaciones de una asociacin. Se conecta a una asociacin mediante una lnea discontinua, y puede asociarse a otra clase.

Notaciones para Modelos de Datos


Diagrama de Clases UML
Asociaciones: clases de asociacin
trabaja_para Empresa Persona

Contrato

Diagrama de Clases
Clase de Asociacin.
Compaa 0..1 patron 1..* empleado Persona

Contrato descirpcion fechaContrato salario

La clase de asociacin no puede estar conectada a ms de una asociacin.

Diagrama de Clases
Relaciones. La clase de asociacin debe llamarse como la asociacin

Caractersticas de los Datos y sus Relaciones


ms sobre asociaciones...
1..* Alumno Inscripcin
Semestre/Ao VTR

1..*

Curso

Clase de Asociacin

Notaciones para Modelos de Datos


Diagrama de Clases UML
Asociaciones: clases de asociacin

trabaja_para

Diagrama de Clases
Clase Asociacin Pueden asociarse diversas clases con una en particular.
Defensa Participa en Equipo

Contrato

Negociado por DirectorGeneral

Diagrama de Clases
Clase Asociacin

Posible problema: Mucha parte del negocio depende de la clase asociacin

Diagrama de Clases
Dependiendo del escenario de negocio, una buena prctica podra ser

Herencia

Diagrama de Clases
Jerarquas de Herencia Si Ud. Conoce algo de
una categora de cosas, automticamente sabr algunas cosas que podr transferir a otras categoras. Si usted sabe que algo es un animal dar por hecho que come, duerme, tiene forma de nacer, de trasladarse de un lugar a otro y algunos atributos (y operaciones) que podr listar si pensara en ello por algunos instantes.

Diagrama de Clases
Jerarquas
Herencia o generalizacin. UML a la herencia tambin la denomina generalizacin. Una clase (La clase secundara o subclase) puede heredar atributos y operaciones de otra (La clase principal o superclase). La clase principal (Padre) es ms genrica que la secundaria (hijo).

Diagrama de Clases
Jerarquas
Herencia o generalizacin. Generalizacin/Especializacin. (es un)
Animal

Anfibio

Mamfero

Reptil

Caballo

Diagrama de Clases
Herencia o generalizacin Abstracta. Suponga

Jugador

Defensa

Delantero

Centro

Diagrama de Clases
- Relaciones. Herencia: Generalizacin/Especializacin. (es un)
Academico Rut Nombre Apellidos

JornadaCompleta Oficina anexo

JornadaParcial Horas email

Notaciones para Modelos de Datos


Diagrama de Clases UML
Herencia:

Usuario login : String password : String Nombre : String claveDB Alumno curso : Integer promedio : Single nuevaAnotacion() nuevaNota() registrarAsistencia() rendirPrueba() getNombre() login() load() Empleado sueldo : Integer titulo : String pagarSueldo()

Profesor horas_de_trabajo : Integer jefeCurso : String fijarPrueba()

Administrativ o cargo : String marcarTarjeta()

Secretaria matricularAlumno()

Director contratarProfesor()

Portero limpiarPasillo()

Notaciones para Modelos de Datos


Diagrama de Clases UML
H o m b re M u j er C h il e n o

P e rs o n a

E x t ra n je ro

A lu m n o

P r o fe s o r

A d m i s t r a t i vo

Enfoque de Orientacin a Objetos


Herencia: propiedades.
Cobertura: si todas las entidades del supertipo pueden ser clasificados por, al menos, uno de los subtipos, la jerarqua de herencia tiene cobertura completa (total, exhaustiva). Cobertura completa, el nombre de la clase va con letra cursiva
Persona

Alumno

Profesor

Admistrativo

Enfoque de Orientacin a Objetos


Herencia: propiedades.
Exclusividad: si una entidad slo puede pertenecer a uno de los subtipos a la vez, la jerarqua de herencia es exclusiva. Dinamicidad: aunque una entidad pertenezca a uno de los subtipos, es posible que tambin sea de otro.

Diagrama de Clases
- Relaciones. Herencia: Generalizacin/Especializacin. (es un)

Caractersticas de los Datos y sus Relaciones


Clase Abstracta

Persona

Alumno

Profesor

Admistrativo

Asociacin por Agregacin

Caractersticas de los Datos y sus Relaciones


Existen dos tipos de agregacin: Simple: slo es una relacin conceptual, no tiene implicaciones en el comportamiento de las clases. No considera una dependencia existencial entre las partes y el todo. Compuesta (composicin): presenta fuertes implicaciones de comportamiento. La composicin une la existencia de las partes al todo: si el todo desaparece tambin desaparecen sus partes.

Diagrama de Clases
Asociacin por agregacin Simple: Una asociacin por agregacin simple se representa por una lnea entre el componente y el todo, con un rombo sin relleno que conforma al todo.

Diagrama de Clases
Relaciones.
Agregacin (simple). Slo distingue el todo de las partes, y no une la existencia de las partes a la del todo. (tiene o contiene)

Empleado EquipoDeTrabajo numeroDeIntegrantes fechaDeFormacion 1..* 0..* RUT nombre apellido fono direccion

Diagrama de Clases
- Relaciones. Agregacin (simple).
Una relacin de agregacin es la que forma un todo con sus partes. Son un tipo especial de relacin de asociacin. Pueden tener nombre, roles, multiplicidad, En las relaciones de agregacin, un objeto que representa una parte puede estar compartido por varios objetos que representan el todo (un alumno est en un curso y tambin puede estar en un grupo de amigos)

Diagrama de Clases
Asociacin por agregacin:
Computador

parlante

Gabinete

Teclado

Monitor

Ratn

Botn USB CD RAM Video

Bola

Asociacin Agregacin Compuesta

Diagrama de Clases
Relacin Agregacin Compuesta (Composicin). Las relaciones de composicin son un tipo especial de relacin de agregacin. Los objetos parte siempre estn asociados a un objeto todo y slo a uno, se crean y se destruyen con l (Empleado y Empresa). Los objetos parte no pueden compartirse entre varios objetos todo.

Caractersticas de los Datos y sus Relaciones


Composicin: (agregacin compuesta)

Factura

ItemFactura

Diagrama de Clases
Relaciones. Agregacin Compuesta (Composicin). Establece un fuerte vnculo entre el todo y las partes. Liga la existencia de las partes a la existencia del todo.
Empresa RUT nombre direccion fono 1..* Departamento nombre piso numeroDeEmpleados gerente

Diagrama de Clases

Enfoque de Orientacin a Objetos


Agregacin: Simple: rombo en blanco en el lado del todo. Compuesta: rombo ennegrecido en el lado del todo.

Anlisis de Sistemas
1.- Resumen del Proceso Unificado 2.- Lenguaje Unificado de Modelado (UML) 3.- Levantamiento de Requisitos UML : Casos de Uso 4.- Anlisis del Sistema UML 4.1.- Diagrama de Actividades 4.2.- Diagrama de Clases (modelo conceptual) 4.3.- Diagrama de Estados

You might also like