Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Sistemas de Informacin
Es la razn de ser para la tecnologa de cmputo.
Adems de almacenar y recuperar datos, ayudan
a la gente a usar informacin: clasificar listas,
imprimir reportes, comparar una sola huella
digital contra la Base de Datos, rastrear la
ubicacin de aeronaves.
Nos ayudan a obtener mayor valor de la
informacin al aplicarla a propsitos diferentes
Sistemas de Informacin
Consiste en los procedimientos y reglas
establecidas para entregar informacin a la
gente dentro de una organizacin
Los tomadores de decisiones comprendieron
que la informacin alimenta a los negocios y
puede ser el factor crtico para la
determinacin del xito o fracaso de stos.
de problemas, oportunidades
y Objetivos
Determinacin de los requerimientos de
informacin
Anlisis de las necesidades del sistema
Diseo del sistema recomendado
Desarrollo y documentacin del software
Prueba y mantenimiento del sistema
Implementacin y evaluacin del sistema
Programacin O-O
Objeto: Representacin en computadora de
alguna cosa o evento del mundo real
Clase: Categora de objetos similares
Ocurrencia: Cuando se crea un objeto de
una clase
Mensajes: Cuando se enva informacin de
un objeto a otro
Programacin O-O
Encapsulacin: La informacin acerca de
un objeto esta encapsulada por su
comportamiento. Un objeto mantiene datos
acerca de cosas del mundo real a las que
representa en un sentido verdadero.
Herencia: Las clases pueden tener hijos,
una clase puede ser creada a partir de otra
clase. La clase original es llamada clase
base
Programacin O-O
Polimorfismo: Se refiere a comportamientos
alternos entre clases derivadas relacionadas.
Cuando varias clases heredan atributos y
comportamientos, puede haber casos donde el
comportamiento de una clase derivada deba
ser diferente del de su clase base o de sus
clases derivadas parientes.
Anlisis OO
Modelo de cinco capas (Coad y Yourdon):
Clase/Objeto: Indica las clases y objetos
Estructura: Captura diversas estructuras de
clases y objetos (relaciones 1:* y la herencia)
Atributos: Detalla los atributos de las clases
Servicio: Indica los mensajes y comportamientos del Objeto (servicios y mtodos)
Tema: Divide el diseo en unidades de
implementacin o asignaciones de equipos
Diseo OO
Las actividades de diseo son agrupadas en
los cuatro componentes principales del
sistema final:
Problema
Interfaz Humana
Manejo de Datos
Manejo de Tareas
Metodologas Alternas
Elaboracin de Prototipos, respuesta a los tiempos de
desarrollo largos.
Orientacin a los Datos, desarrollo de acuerdo al Ciclo
de Vida de la Base de Datos
Metodologa sociotcnicas que combina soluciones
sociales y tcnicas
Campen de Proyecto, adopta la estrategia de
involucrar a una persona clave de cada rea afectada
por el sistema
Modelar mediante el uso de Ideogramas que capturan
caractersticas narrativas
Qu es el Lenguaje para
Modelamiento Unificado (UML)?
El lenguaje para modelamiento unificado (UML), es un
lenguaje para la especificacin, visualizacin,
construccin y documentacin de los artefactos de un
proceso de sistema intensivo. Fue originalmente
concebido por la Corporacin Rational Software y tres
de los ms prominentes mtodologistas en la industria de
la tecnologa y sistemas de informacin: Grady Booch,
James Rumbaugh, y Ivar Jacobson ("The Three
Amigos"). El lenguaje ha ganado un significante soporte
de la industria de varias organizaciones va el consorcio
de socios de UML y ha sido presentado al Object
Management Group (OMG) y aprobado por ste como
un estndar (noviembre 17 de 1997).
Qu es el Lenguaje para
Modelamiento Unificado (UML)?
Dentro de un proceso de sistema intensivo, un
mtodo es aplicado para llegar o evolucionar un
sistema
Como un lenguaje, es usado para la comunicacin.
Es decir, un medio para capturar el conocimiento
(semnticas) respecto a un tema y expresar el
conocimiento (sintaxis) resguardando el tema
propsito de la comunicacin. El tema es el sistema
en estudio.
Qu es el Lenguaje para
Modelamiento Unificado (UML)?
Como un lenguaje para modelamiento, se enfoca en
la comprensin de un tema a travs de la
formulacin de un modelo del tema (y su contexto
respectivo). El modelo abarca el conocimiento
cuidando del tema, y la apropiada aplicacin de este
conocimiento constituye inteligencia.
Cuidando la unificacin, integra las mejores
prcticas de la ingeniera de la industria tecnolgica
y sistemas de informacin pasando por todos os
tipos de sistemas (software y no - software),
dominios (negocios versus software) y los procesos
de ciclo de vida.
Qu es el Lenguaje para
Modelamiento Unificado (UML)?
En cuanto a cmo se aplica para especificar
sistemas, puede ser usado para comunicar
"qu" se requiere de un sistema y "cmo" un
sistema puede ser realizado.
En cuanto a cmo se aplica para visualizar
sistemas, puede ser usado para describir
visualmente un sistema antes de ser
realizado.
Qu es el Lenguaje para
Modelamiento Unificado (UML)?
En cuanto a cmo se aplica para construir
sistemas, puede ser usado para guiar la
realizacin de un sistema similar a los
"planos".
En cuanto a cmo se aplica para documentar
sistemas, puede ser usado para capturar
conocimiento respecto a un sistema a lo largo
de todo el proceso de su ciclo de vida.
Qu no es UML?
Un lenguaje de programacin visual, sino un
lenguaje de modelamiento visual
Una herramienta o depsito de
especificacin, sino un lenguaje para
modelamiento de especificacin.
Un proceso, sino que habilita procesos.
Fundamentalmente, UML est relacionado con la
captura, comunicacin y nivelacin (disgregacin
en niveles) de conocimientos.
Utilidad de UML
Como lenguaje de propsito general, se enfoca en
el corazn de un conjunto de conceptos para la
adquisicin, comparticin y utilizacin de
conocimientos emparejados con mecanismos de
extensin.
Como un lenguaje para modelamiento ampliamente
aplicable, puede ser aplicado a diferentes tipos de
sistemas (software y no - software), dominios
(negocios versus software) y mtodos o procesos.
Utilidad de UML
Como un lenguaje para modelamiento soportable
por herramientas, las herramientas ya estn
disponibles para soportar la aplicacin del lenguaje
para especificar, visualizar, construir y documentar
sistemas.
Como un lenguaje para modelamiento
industrialmente estandarizado, no es un lenguaje
cerrado, propiedad de alguien, sino ms bien, un
lenguaje abierto y totalmente extensible reconocido
por la industria.
Utilidad de UML
UML posibilita la captura, comunicacin y nivelacin
de conocimiento estratgico, tctico y operacional
para facilitar el incremento de valor, aumentando la
calidad, reduciendo costos y reduciendo el tiempo de
presentacin al mercado; manejando riesgos y siendo
proactivo para el posible aumento de complejidad o
cambio
UML
La explicacin se basar en los diagramas,
en lugar de en vistas o anotacin, ya que
son estos la esencia de UML. Cada
diagrama usa la anotacin pertinente y la
suma de estos diagramas crean las
diferentes vistas. Las vistas existentes en
UML son:
Vista casos de uso: Se forma con los
diagramas de casos de uso, colaboracin,
estados y actividades.
Diagramas Recomendados
Aplicacin monousuario:
Diagrama de casos de uso.
Diagrama de clases.
Diagrama de interaccin.
Aplicacin monousuario, con entrada de eventos:
Aadir: Diagrama de estados.
Aplicacin cliente servidor:
Aadir: Diagrama de despliegue y diagrama de
componentes, dependiendo de la complejidad.
Todos.
por
un
mueco.
Sus
<<extend>>
Validar Producto
Modelado de contexto
Se debe modelar la relacin del sistema con los
elementos externos, ya que son estos elementos los
que forman el contexto del sistema.
Los pasos a seguir son:
Modelado de contexto
Validacin tarjetas de credito.
Realizar transaccion
Cliente
Comercio
Procesar factura
Corporativo
Individual
Gestionar cuenta
Banco
Modelado de requisitos
La funcin principal, o la mas conocida del diagrama
de casos de uso es documentar los requisitos del
sistema, o de una parte de el.
Los requisitos establecen un contrato entre el sistema
y su exterior, definen lo que se espera que realice el
sistema, sin definir su funcionamiento interno. Es el
paso siguiente al modelado del contexto, no indica
relaciones entre autores, tan solo indica cuales deben
ser las funcionalidades (requisitos) del sistema. Se
incorporan los casos de uso necesarios que no son
visibles desde los usuarios del sistema
Modelado de requisitos
Para modelar los requisitos es recomendable:
Establecer su contexto, para lo que tambin
podemos usar un diagrama de casos de uso.
Identificar las necesidades de los elementos del
contexto (Actores).
Nombrar esas necesidades, y darles forma de caso
de uso.
Identificar que casos de uso pueden ser
especializaciones
de
otros,
o
buscar
especializaciones comunes para los casos de uso ya
encontrados
Modelado de requisitos
Validacin tarjetas de credito.
Realizar transaccion
Cliente
Banco
Comercio
Gestionar cuenta
Diagrama de Clases
Forma parte de la vista esttica del sistema. En el
diagrama de clases ser donde definiremos las
caractersticas de cada una de las clases, interfaces,
colaboraciones y relaciones de dependencia y
generalizacin. Es decir, es donde daremos rienda
suelta a nuestros conocimientos de diseo orientado
a objetos, definiendo las clases e implementando las
ya tpicas relaciones de herencia y agregacin.
Public
Protected
Private
Paquete
Un paquete es una forma de agrupar clases (u otros elementos
en otro tipo de diagramas) en modelos grandes. Pueden tener
asociaciones de dependencia o de generalizacin entre ellos.
Un ejemplo puede ser el siguiente
Generalizacin
La relacin de generalizacin denota una
relacin de herencia entre clases. Se
representa dibujando un tringulo sin
rellenar en el lado de la superclase. La
subclase hereda todos los atributos y
mensajes descritos en la superclase. En el
ejemplo se encuentra una generalizacin
entre DepositoMonedas (superclase) y
DepositoMonedasIguales (subclase).
Asociacin
Una asociacin en general es una lnea que
une dos o ms smbolos. Pueden tener
varios tipos de adornos, que definen su
semntica y caractersticas. Algunos tipos
de asociaciones entre clases presentes en
un diagrama esttico son:
1 Asociacin binaria
2 Composicin
Asociacin
Cada asociacin puede presentar algunos elementos
adicionales que dan detalle a la relacin, como son:
Rol: Identificado como un nombre al final de la
lnea, describe la semntica de la relacin en
el sentido indicado. Por ejemplo, la asociacin
de composicin entre Maquina e Ingrediente
recibe el nombre de existencias, como rol en
ese sentido
Multiplicidad: Describe la cardinalidad de la
relacin. En el ejemplo anterior se utilizan 1,
1 ..*, 5, *, como indicadores de multiplicidad.
Asociacin Binaria
Se identifica como una lnea slida que une dos clases.
Representa una relacin de algn tipo entre las dos clases,
no muy fuerte (es decir, no se exige dependencia
existencial ni encapsulamiento).
Un posible ejemplo es la relacin entre una compaa y
sus empleados
En este caso la relacin recibe el nombre genrico
Trabaja Para, la compaa tiene uno o ms instancias de
la clase Persona denominadas empleado y cada empleado
conoce su empleador (en este caso nico).
Composicin
Es una asociacin fuerte, que implica tres cosas
Dependiencia existencial. El elemento
dependiente desaparece al destruirse el que
lo contiene y, si es de cardinalidad 1, es
creado al mismo tiempo.
Hay una pertenencia fuerte. Se puede decir
que el objeto contenido es parte constitutiva
y vital del que lo contiene
Los objetos contenidos no son compartidos,
esto es, no hacen parte del estado de otro
objeto.
Composicin
Se denota dibujando un rombo relleno del lado de la clase
que contiene a la otra en la relacin. En el ejemplo inicial
de esta hoja se presentan varios ejemplos de relaciones de
composicin entre Maquina y Producto, Maquina y
DepositoMonedas y Maquina y DepositoMonedasIguales.
Existe tambin una relacin de composicin menos fuerte
(no se exige dependencia existencial, por ejemplo) que es
denotada por una un rombo sin rellenar en uno de los
extremos. Un ejemplo puede encontrarse entre Producto e
Ingrediente.
Clase Paramtrica
Una clase paramtrica representa el concepto de clase
genrica en los conceptos bsicos OO o de template en
C++. Se dibuja como una clase acompaada de un
rectngulo en la esquina superior derecha, con los
parmetros del caso.
Por ejemplo, la clase Lista que utiliza un parmetro
formal Tipo se vera de la siguiente manera
Nota
Es un comentario dentro de un diagrama.
Puede estar relacionado con uno o ms
elementos en el diagrama mediante lneas
punteadas. Pueden representar aclaraciones
al diagrama o restricciones sobre los
elementos relacionados (cuando el texto se
encuentra entre '[' y ']'). Se representa
mediante un rectngulo con su borde
superior derecho doblado.
Diagrama de Secuencia
Muestra la interaccin de un conjunto de
objetos en una aplicacin a travs del tiempo.
Esta descripcin es importante porque puede
dar detalle a los casos de uso, aclarndolos al
nivel de mensajes de los objetos existentes,
como tambin muestra el uso de los mensajes
de las clases diseadas en el contexto de una
operacin
Diagrama de Secuencia
A continuacin se muestra un ejemplo de diagrama de
secuencia, que da detalle al caso de uso PedirProducto
Diagrama de Secuencia
Linea de vida de un objeto
Un objeto se representa como una lnea vertical
punteada con un rectngulo de encabezado y con
rectngulos a travs de la linea principal que denotan
la ejecucin de mtodos. El rectngulo de encabezado
contiene el nombre del objeto y el de su clase, en un
formato nombreObjeto: nombreClase. Por ejemplo, el
objeto m, instancia de la clase MaquinaCafe enva dos
mensajes seguidos para dar respuesta a la operacin
PedirProducto: Servir al objeto p de la clase Producto
y DarVueltas a s mismo
Diagrama de Secuencia
Activacin
Muestra el periodo de tiempo en el cual el objeto se
encuentra desarrollando alguna operacin, bien sea
por s mismo o por medio de delegacin a alguno de
sus atributos. Se denota como un rectngulo delgado
sobre la lnea de vida del objeto. En el ejemplo
anterior el objeto _ingredientes se encuentra
activado mientras ejecuta el mtodo correspondiente
al mensaje Servir; el objeto p se encuentra activo
mientras se ejecuta su mtodo Servir (que ejecuta
_ingredientes.Servir) y el objeto m se encuentra
activo mientras se ejecuta p.Servir y DarVueltas.
Diagrama de Secuencia
Mensaje
El envo de mensajes entre objetos se denota
mediante una lnea slida dirigida, desde el
objeto que emite el mensaje hacia el objeto
que lo ejecuta. En el ejemplo anterior el
objeto m enva el mensaje Servir al objeto p y
un poco ms adelante en el tiempo el objeto m
se enva a s mismo el mensaje DarVueltas
Diagrama de Colaboracin
Es una forma de representar interaccin entre
objetos, alterna al diagrama de secuencia. A
diferencia de los diagramas de secuencia,
pueden mostrar el contexto de la operacin
(cules objetos son atributos, cules
temporales) y ciclos en la ejecucin. Se toma
como ejemplo el caso de uso PedirProducto
ya descrito como diagrama de secuencia.
Diagrama de Colaboracin
Diagrama de Colaboracin
Objeto
Un objeto se representa con un rectngulo, que contiene el
nombre y la clase del objeto en un formato nombreObjeto:
nombreClase.
Enlaces
Un enlace es una instancia de una asociacin en un diagrama
de clases. Se representa como una lnea continua que une a dos
objetos. Esta acompaada por un nmero que indica el orden
dentro de la interaccin y por un estereotipo que indica que
tipo de objeto recibe el mensaje. Pueden darse varios niveles
de subindices para indicar anidamiento de operaciones. Los
estereotipos indican si el objeto que recibe el mensaje es un
atributo (association y se asume por defecto), un parmetro de
un mensaje anterior, si es un objeto local o global.
Diagrama de Colaboracin
Flujo de mensajes
Expresa el envo de un mensaje. Se representa
mediante una flecha dirigida cercana a un enlace.
Marcadores de creacin y destruccin de objetos
Puede mostrarse en la grfica cules objetos son
creados y destruidos, agregando una restriccin con
la palabra new o delete, respectivamente, cercana al
rectngulo del objeto
Diagrama de Colaboracin
Objeto compuesto
Es una representacin alternativa de un objeto y sus atributos.
En esta representacin se muestran los objetos contenidos
dentro del rectngulo que representa al objeto que los
contiene. Un ejemplo es el siguiente objeto ventana