Вы находитесь на странице: 1из 19

Proyecto de Investigacin Curso Acadmico de Programacin Orientada a Objetos

FASE 5
Modelo de Diseo Orientado a Objetos.

Presentado por:
Grupo: 301403_30

Integrado por:
Jos Ramn Valencia Cdigo: 16937012
Luis Alberto Jaramillo Gonzlez Cdigo 1.151.958.462
Diana Isabel Rondn Fernndez Cdigo 1.143.844.793
Ronald Eduardo Murillo Gonzlez. 94153073
Luis Eduardo Urreste Melo Cdigo. 6322073

Tutor:
Cesar Jimnez

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA


ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA
PROGRAMA INGENIERIA DE SISTEMAS
COLOMBIA

Pgina 1

Proyecto de Investigacin Curso Acadmico de Programacin Orientada a Objetos


Noviembre de 2016
Tabla de Contenidos

DESARROLLO DE LA ACTIVIDAD ............................................................................ 5


8.1. ESTRATEGIAS DEL DISEO DEL PROYECTO ............................................... 5
8.1.1. Arquitectura ................................................................................................... 5
8.1.2 Robustez ........................................................................................................ 6
8.2. Diseo de Objetos ............................................................................................. 7
8.3. Diseo de Sistema de su proyecto ................................................................ 11
8.3.1. Mtodo Usuario ........................................................................................... 11
8.3.2. Mtodo Uso Tarjeta Dbito ......................................................................... 11
8.3.3. Mtodo Uso Tarjeta credito ......................................................................... 12
8.5. Diagramas de Secuencias del Diseo de su proyecto ................................. 16
8.5.1. Secuencia para validar los datos del usuario .............................................. 16
8.5.2 Diagrama de secuencias para cuando la contrasea est errada ............... 16
8.5.3. Secuencia correcta del usuario en el cajero. .............................................. 17
8.5.4. Diagrama de secuencias para cuando no hay fondos en la cuenta ............ 17

Pgina 2

Proyecto de Investigacin Curso Acadmico de Programacin Orientada a Objetos

INTRODUCCIN
En la historia de la informtica se han desarrollado diversos lenguajes de
programacin que han ido evolucionando a medida que la tecnologa de los
sistemas de cmputo avanza. Pero no solo los lenguajes de programacin han
avanzado sino tambin la tcnica para realizar programas ms rpidos, eficientes y
menos complejos, es por esto que muchos desarrolladores y programadores han
adoptado paradigmas de programacin que les permitan representar y abstraer los
elementos involucrados en un sistema. Uno de los paradigmas ms utilizados
actualmente es la programacin orientada a objetos en el cual el ncleo central es la
unin de datos y procesamiento en un unidad llamada Objeto relacionable a su vez
con otras entidades Objeto. En este documento se pretende dar solucin a un
problema implementando un lenguaje sencillo como UML, para representar cada
uno de los actores y casos de uso asociados, los cuales servirn de base para
definir las clases.
Por otro lado, disearemos la estrategia de diseo que permitir construir la
arquitectura de nuestro proyecto y desarrollar los diagramas de secuencias que
ilustraran la forma en que los objetos que interactuaran con el sistema. Tambin se
har una revisin del diseo del proyecto para evaluar la forma en que el usuario
ingresa y se valida en el sistema, y verificar el manejo de las clases entidad en
relacin con las clases borde.

Pgina 3

Proyecto de Investigacin Curso Acadmico de Programacin Orientada a Objetos

OBJETIVOS

Disear las estrategias de diseo del proyecto.

Identificar los objetos del Proyecto.

Aprender a disear el sistema que permitir la implementacin del cajero


automtico.

Comprender la importancia de la revisin del diseo del sistema.

Desarrollar los diagramas de secuencia que mostrarn la interaccin entre los


objetos del sistema.

Pgina 4

Proyecto de Investigacin Curso Acadmico de Programacin Orientada a Objetos

DESARROLLO DE LA ACTIVIDAD

8.1. ESTRATEGIAS DEL DISEO DEL PROYECTO


8.1.1. Arquitectura
A continuacin se muestra un diagrama representando la arquitectura a implementar
en nuestro proyecto.

Pgina 5

Proyecto de Investigacin Curso Acadmico de Programacin Orientada a Objetos

8.1.2 Robustez
El siguiente diagrama muestra la arquitectura de nuestro proyecto, incluyendo el
manejo de errores y excepciones con el fin de dar robustez al sistema.

Pgina 6

Proyecto de Investigacin Curso Acadmico de Programacin Orientada a Objetos


8.2. Diseo de Objetos
Clase: InterfaceCliente
Descripcin: Es el ambiente de interaccin entre el actor cliente y el cajero
automtico de PobreBank
Mdulo: Usuario
Estereotipo: Borde
Propiedades: Concreta
Superclases:
Subclases:
Atributos:
Solicita ingreso de la tarjeta crdito o ControladorGeneral
dbito.
Solicita ingreso de clave
PantallaValidarCliente

Clase: InterfaceAdmonBaseDatos
Descripcin: Medio de comunicacin del actor administrador del sistema
Mdulo: Base Datos
Estereotipo: Borde
Propiedades: Concreta
Superclases:
Subclases:
Atributos:
Permite el acceso la administracin del
ControladorGeneral
sistema.
Despliega men de administracin base
ControladorGeneral
de datos
Acceso a la base de datos tarjeta crdito CuentaCreditoCliente
debito
Acceso a la base de datos cuentas de
CuentaAhorrosCliente
ahorro

Pgina 7

Proyecto de Investigacin Curso Acadmico de Programacin Orientada a Objetos

Clase: InterfaceHardwareCajeroAutomtico
Descripcin: Dispositivo encargado de realizar las interacciones fsicas con el
cliente, tal como entregar dinero.
Mdulo: Cajero
Estereotipo: Borde
Propiedades: Concreta
Superclases:
Subclases:
Atributos:
Valida el chip de la tarjeta ingresada
ControladorCambioClave
Solicita clave de usuario
PantallaValidarCliente
Da paso a la pantalla principal
ControladorGeneral
Clase: InterfaceBasedeDatosCuentasAhorro
Descripcin: Mediacin entre el actor Base Datos Cuentas de ahorro y el
sistema.
Mdulo: Base Datos
Estereotipo: Borde
Propiedades: Concreta
Superclases:
Subclases:
Atributos:
Paga dinero debito de la cuenta de
ControladorRetiro
ahorros si existe saldo.
Presenta informacin de estado de
ControladorSaldo
cuenta

Clase: InterfaceProgramador
Descripcin: Acceso del actor programador con el software del sistema
Mdulo: Base Datos
Estereotipo: Borde
Propiedades: Concreta
Superclases:
Subclases:
Atributos:
Acceso al software del sistema (cdigo
ControladorGeneral
fuente)
Acceso al software general de aplicacin ControladorGeneral
del cajero automtico.
Acceso al control del hardware
ControladorGeneral

Pgina 8

Proyecto de Investigacin Curso Acadmico de Programacin Orientada a Objetos


Clase: InterfaceBaseDatosTargetaCrditoDbito
Descripcin: Ambiente de interaccin entre el actor Base Datos Tarjetas Crdito
Dbito y el sistema.
Mdulo: Base Datos
Estereotipo: Borde
Propiedades: Concreta
Superclases:
Subclases:
Atributos:
Selecciona tipo de tarjeta crdito o
PantallaServicios
dbito.
Paga dinero por avance tarjeta crdito si ControladorPagoCredito
existe cupo.
Presenta informacin de estado de
ControladorDespliegueSaldo
cuenta tarjeta crdito.
Actualiza informacin de saldo en tarjeta ControladorAvance
de crdito.

Clase: PantallaServicios
Descripcin: Es el ambiente de mediacin entre el actor cliente y los servicios
ofrecidos por el cajero automtico.
Mdulo: Usuario
Estereotipo: Borde
Propiedades: Concreta
Superclases:
Subclases:
Atributos:
Despliega servicio Consultar saldo.
ControladorSaldo
Despliega servicio retiros.
ControladorGeneral
Despliega servicio avances.
ControladorGeneral
Despliega servicio cambio de calve.
ControladorCambioClave
Clase: CuentaAhorrosCliente
Descripcin: Valida la informacin almacenada en la cuenta de ahorros del
cliente.
Mdulo: Base Datos
Estereotipo: Entidad
Propiedades: Concreta
Superclases:
Subclases:
Atributos:
Actualiza informacin de saldo en cuenta ControladorPagoDebito
de cliente.
Almacena informacin del usuario.
RegistroCliente

Pgina 9

Proyecto de Investigacin Curso Acadmico de Programacin Orientada a Objetos

Clase: IDChipTarjetaDbito
Descripcin: Valida la informacin almacenada en el chip de la tarjeta dbito del
cliente.
Mdulo: Cajero
Estereotipo: Entidad
Propiedades: Concreta
Superclases:
Subclases:
Atributos:
Guarda datos del chip asociados a la
RegistroCliente
clave de usuario.

Clase: ClaveDbitoCliente
Descripcin: Valida la informacin de la clave suministrada por el cliente y
almacenada en la base de datos dl sistema.
Mdulo: Cajero
Estereotipo: Entidad
Propiedades: Concreta
Superclases:
Subclases:
Atributos:
Almacena informacin sobre clave de
ControladorCambioClave
usuario
Actualiza informacin sobre cambio de
ControladorClaveNueva
calve usuario.
Clase: RegistroCliente
Descripcin: Valida toda la informacin relacionada con el cliente del banco que
se encuentra almacenada en la base de datos.
Mdulo: Banco
Estereotipo: Entidad
Propiedades: Concreta
Superclases:
Subclases:
Atributos:
Guarda informacin personal de contacto ControladorGeneral
del cliente.
Actualiza informacin personal de
ControladorGeneral
contacto del cliente.
Asocia cuenta de ahorro al cliente
CuentaAhorrosCliente
Asocia tarjeta crdito al cliente
CuentaDebitoCliente

Pgina 10

Proyecto de Investigacin Curso Acadmico de Programacin Orientada a Objetos

8.3. Diseo de Sistema de su proyecto


Para el desarrollo del diseo del sistema me he basado en los trabajos
anteriormente desarrollados, aqu podemos observar que encontramos entradas,
salidas y el procedimiento que debe realizar cada una de las funciones que hemos
planteado anteriormente.
8.3.1. Mtodo Usuario
Para este primer punto vamos a tratar la interfaz del usuario, este mtodo tiene
como mtodos la consulta de la fecha de creacin del usuario, el estado del usuario
en el sistema, identificar cuantos productos tiene asociados asignarle productos y
retirarles productos.

Entradas
Obtener la fecha de creacin del usuario
Estado del usuario
Cuales productos tiene asociados
Asignacin de productos
Retiro de productos
Cambio de productos
Procesos
El proceso que se debe realizar para cada uno de los siguientes mtodos, es el
de consultar la informacin del usuario a la base de datos y retornar la
informacin solicitada en caso de consulta, en caso de actualizacin se debe
realizar la actualizacin sobre la base de datos dejando registro de quien y cul
fue el motivo de la actualizacin de dicha informacin.
Salidas
- Obtener la fecha de creacin
- Obtener el estado del usuario
- Obtener el nmero y cuales productos tiene asociados
- Confirmacin de la asignacin del producto
- Confirmacin del retiro del producto
- Confirmacin del cambio del producto
-

8.3.2. Mtodo Uso Tarjeta Dbito


Para este segundo punto vamos a tratar la interfaz para el uso de la tarjeta debito
del usuario aqu podemos tener como entradas la consulta de saldo, el retiro de
dinero, la consignacin de dinero, la consulta del estado de la tarjeta y la consulta de
movimientos de dicha tarjeta.

Entradas
Consulta de saldo
Consulta de estado de la tarjeta
Retiro de dinero

Pgina 11

Proyecto de Investigacin Curso Acadmico de Programacin Orientada a Objetos


-

Consignacin de dinero
Consulta de movimientos

Procesos
El proceso que se debe realizar para cada uno de los siguientes mtodos, es el
de consultar la informacin del usuario a la base de datos y retornar la
informacin solicitada en caso de consulta, en caso de actualizacin se debe
realizar la actualizacin sobre la base de datos dejando registro de quien y cul
fue el motivo de la actualizacin de dicha informacin.
Salidas
- Obtener el saldo de la tarjeta
- Obtener el estado de la tarjeta
- Obtener la confirmacin o negacin para el retiro del dinero
- Aumentar la cifra consignada en el saldo de la tarjeta
- Obtener los movimientos de la cuenta
8.3.3. Mtodo Uso Tarjeta credito
Para este tercer punto vamos a realizar la interfaz para el uso de la tarjeta de crdito
del usuario, para este paso vamos a tener como entradas el cupo de la tarjeta, el
valor de avance posible, el monto mnimo a pagar, el monto total a pagar, la fecha
de corte de la tarjeta de crdito y la consulta de los movimientos relacionados con
dicha tarjeta de crdito.

Entradas
-

Cupo total de la tarjeta


Valor posible para avances
Monto mnimo a pagar
Monto total a pagar
Fecha de corte de la tarjeta
Consulta de movimientos de la tarjeta
Consulta de estado de la tarjeta
Procesos
El proceso que se debe realizar para cada uno de los siguientes mtodos, es el
de consultar la informacin del usuario a la base de datos y retornar la
informacin solicitada en caso de consulta, en caso de actualizacin se debe
realizar la actualizacin sobre la base de datos dejando registro de quien y cul
fue el motivo de la actualizacin de dicha informacin.
Salidas
- Obtener el cupo total de la tarjeta
- Obtener el valor posible para los avances
- Obtener el monto mnimo a pagar
- Obtener el monto total a pagar
- Obtener la fecha de corte de la tarjeta
- Obtener el histrico de los movimientos de la tarjeta
- Obtener el estado de la tarjeta

Pgina 12

Proyecto de Investigacin Curso Acadmico de Programacin Orientada a Objetos

8.4. Revisin del Diseo de su proyecto


El Diseo Orientado a Objetos es parte del Desarrollo Orientado a Objetos utiliza
una estrategia orientada a objetos en el Proceso de Desarrollo:
Anlisis Orientado a Objetos Comprende el desarrollo de un modelo orientado a
objetos del dominio de aplicacin. Los objetos identificados reflejan las entidades y
operaciones que se asocian con el problema a resolver. Diseo Orientado a Objetos
comprende el desarrollo de un modelo orientado a objetos de un sistema software
para implementar los requerimientos identificados.
Los objetos => estn relacionados con la solucin del problema.
Pueden existir relaciones entre algunos objetos del problema y algunos objetos de la
solucin, pero el diseador deber agregar nuevos objetos para transformar los
objetos del problema e implementar la solucin.
Programacin Orientada a Objetos implementa el Diseo de Software utilizando un
lenguaje de Programacin Orientado a Objetos, como Java. Un lenguaje orientado a
objetos provee recursos para definir las clases y un sistema para crear los objetos
correspondientes a las clases.
A veces, las decisiones sobre la distribucin de los objetos y si stos se
implementan de forma secuencial o concurrente tambin se pueden retrasar. Esto
significa que los diseadores de software no estn condicionados por los detalles de
la implementacin del sistema. Pueden formular diseos que se adapten a los
diversos entornos de ejecucin. Los sistemas orientados a objetos son ms fciles
de mantener, porque los objetos son independientes. Estos sistemas pueden ser
entendidos y modificados como entidades independientes. Cambiar la
implementacin de un objeto o agregarle servicios no afecta a los otros objetos del
sistema.
Como los objetos estn asociados a cosas, a menudo hay una correspondencia
clara entre las entidades del mundo real con los objetos de software.
1.

Esto mejora la comprensin y la mantenibilidad del Diseo.

2.
Los objetos son componentes potencialmente reutilizables debido a que son
encapsulamientos independientes del estado y las operaciones.
3.
Los diseos se pueden desarrollar utilizando objetos creados en los diseos
previos.
4.

Esto reduce los costos de diseo, programacin y validacin.

Pgina 13

Proyecto de Investigacin Curso Acadmico de Programacin Orientada a Objetos


Tambin conduce a la utilizacin de objetos estndar (por lo que se mejora la
comprensin del diseo) y reduce los riesgos implicados en el desarrollo de
software.
El Diseo Pesado no es necesario en sistemas de negocios pequeos o
medianos. Sin embargo, para sistemas grandes, particularmente en sistemas
crticos, es esencial asegurar que los equipos trabajen en diferentes partes del
sistema adecuadamente coordinados. El Proceso de Diseo que pone nfasis en el
desarrollo dirigido por casos de uso significa que el Diseo est centrado en el
usuario y basado alrededor de las interacciones del usuario con el sistema. Sin
embargo, representar los requerimientos que no estn directamente ligados a los
usuarios del sistema mediante casos de uso es difcil.
Los casos de usos tienen un excelente papel en el anlisis y diseo orientado a
objetos, pero necesitan ser complementados con otras tcnicas que nos permitan
descubrir requerimientos indirectos y no funcionales del sistema.
8.4 Revisin del Diseo

Para la revisin del diseo de nuestro proyecto es necesario:


REVISION DEL DISEO

Necesidades
del cliente

Elementos de
entrada del
diseo

Proceso de
diseo

Resultado
de diseo

Producto de
diseo

Verificacin

Validacin

Pgina 14

Proyecto de Investigacin Curso Acadmico de Programacin Orientada a Objetos

NECESIDADES DEL CLIENTE: Los tipos de necesidades del cliente se


corresponden con tres exigencias de calidad:
La calidad requerida. Corresponde a los atributos indispensables que el cliente
pide al expresar sus necesidades y que la empresa puede conocer en todos sus
trminos para satisfacerlas.
La calidad esperada. Se refiere a aquellos atributos del bien que complementan
los atributos indispensables no siempre explcitos, pero que el cliente desea y que
suelen tener un fuerte componente subjetivo. Se denominan expectativas.
La calidad potencial. Son las posibles caractersticas del bien que desconoce el
cliente, pero que, si se las ofrecemos, valora positivamente.
ELEMENTOS DE ENTRADA DEL DISEO: Las entradas pueden ser de Recursos
Materiales, Recursos Financieros, recursos humanos y de Informacin, constituyen
la fuerza de arranque del sistema y pueden ser:
- En serie: resultado o salida de un sistema anterior relacionado con el sistema en
estudio
- Aleatoria: entradas potenciales o al azar
- Realimentacin: reinduccin de una parte de las salidas del mismo sistema
PROCESO DE DISEO: Un sistema para que pueda funcionar, debe importar
ciertos recursos del medio. Estos pueden ser recursos materiales, recursos
financieros, recursos humanos y/o informacin. Con el fin de utilizar un trmino que
comprenda todos estos insumos, podemos emplear el concepto de energa. Por lo
tanto, los sistemas a travs de su corriente de entrada, reciben la energa necesaria
para su funcionamiento y manutencin.
RESULTADO DE DISEO: se denominan resultados, xitos o beneficios Pueden
ser positivas y negativas para el medio y entorno, entendindose aqu por medio
todos aquellos otros sistemas que utilizan de una forma u otra la energa que
exporta el sistema.
PRODUCTO DEL DISEO: Es el resultado final en este caso la aplicacin que se
necesita para disear el sistema que permitir la implementacin del cajero
automtico
VERIFICACION Y VALIDACION: La verificacin tiene lugar en cada paso en el ciclo
de vida de seguridad, mientras que la validacin ocurre despus de que se instala el
sistema y antes de ponerlo en servicio. Ambas actividades le ayudan a quitar fallas
sistemticas del sistema.
Este recurso de validacin y verificacin proporcionan un alto nivel de garanta del
que el sistema funcionara de acuerdo con lo requerido con su especificacin y
requisitos, estructurando la validacin y la verificacin se pueden hacer ms
manejables y como las prcticas de documentacin le pueden ayudar a producir y
mantener la prueba que un sistema est programado e implementado
adecuadamente.

Pgina 15

Proyecto de Investigacin Curso Acadmico de Programacin Orientada a Objetos

8.5. Diagramas de Secuencias del Diseo de su proyecto


8.5.1. Secuencia para validar los datos del usuario

8.5.2 Diagrama de secuencias para cuando la contrasea est errada

Pgina 16

Proyecto de Investigacin Curso Acadmico de Programacin Orientada a Objetos


8.5.3. Secuencia correcta del usuario en el cajero.

8.5.4. Diagrama de secuencias para cuando no hay fondos en la cuenta

Pgina 17

Proyecto de Investigacin Curso Acadmico de Programacin Orientada a Objetos

CONCLUSIONES

La Programacin Orientada a Objetos es un paradigma que permite


interpretar de una manera abstracta y cercana al mundo real dentro un cdigo
de programa.

El Lenguaje de Modelado Unificado (UML) es una gran herramienta grafica


que permite especificar y documentar un sistema de software, ya que cuenta
con un modo estndar y semnticas para el modelado de un sistema
orientado a objetos.

Los patrones de diseo implementados en este trabajo permiten que una


parte del sistema vare de forma independiente sin afectar las dems partes
cuando existen cambios de requerimiento del cliente, cambios de nuevas
funcionalidades del sistema o cambios en el software con el que interacta el
sistema.

Pgina 18

Proyecto de Investigacin Curso Acadmico de Programacin Orientada a Objetos

BIBLIOGRAFA
Mora, A. 2008. Tema 3: Diagrama de Casos de uso. [En lnea].Formato HTML.
Recuperado Septiembre 16 de 2016
en:https://es.scribd.com/doc/82603040/Casos-de-Uso-explicacion-yejemplos
Weitzenfeld, A. 2014. Ingeniera de Software orientado a objetos con UML. Mxico,
Julio 3 de 2014. [En lnea].Formato PDF. Recuperado Septiembre 25 de 2016
en: https://es.scribd.com/doc/82603040/Casos-de-Uso-explicacion-yejemplos
Berzal, F. Tema 3: Relaciones entre clases: Diagrama de clases UML. [En lnea].
Formato PDF. Recuperado Noviembre 3 de 2016 en:
http://elvex.ugr.es/decsai/java/pdf/3C-Relaciones.pdf
Camila. 2013. Dependencia y asociacion. [En lnea]. Formato HTML. Recuperado
Noviembre 3 de 2016 en:
http://programacioncolmayor3.blogspot.com.co/2013/02/dependencia-yasociacion.html
Weitzenfeld, Alfredo. Ingeniera de Software Orientada a Objetos con UML, Java e
Internet. Mexico City: Cengage Learning, 2005. Gale Virtual Reference
Library. Web. 3 July 2014. Parte III Desarrollo de Software Orientada a
Objetos

Pgina 19

Вам также может понравиться