Professional Documents
Culture Documents
MAPA DE PROCESOS
(como parte del Modelo de Negocios)
Proyeccin ventas
Adquisiciones
Ventas
procesos
Segundo Flujograma de
Informacin
RECEPCIN
POR COMPRAS
DESPACHO
POR VENTAS
Procesos
operativos
Devoluciones
Devoluciones
Flujograma : Proceso de Despacho de Productos a Clientes - (Gua Interna de Despacho por Venta )
Encargado
de Despacho
Cliente
3
Nota de 1
Venta
Despachador
(Bodega)
Cajero
Depto. de
Contabilidad
3
Nota de 1
Venta.
Emitir Gua de
Despacho
Nota :
1) Este Flujograma no sigue
todas las reglas ortodoxas
del diseo, sin embargo,
cumple con la funcin de
mostrar la emisin de la
Gua de Despacho en su
contexto.
3
G/D 1
Interna
2
1
G/D
Interna
3
G/D 1
Interna
Nota de 1
Venta.
3
2
G/D 1
Interna
Recibir
Pago
G/D 1
Interna
Nota de 1
Venta
Depto. de
Ventas
G/D 1
Interna
Despachar
Productos
de Bodega
G/D 1
Interna
25/09/2002
Normalmente la firma de
la Gua de Despacho sera en conjunto entre el
Despachador y el Cliente.
(Copias 1 y 2 ).
G/D 2
Interna
Diseo de Clases:
Diagrama de Casos de Uso
(Casos de Uso Bsicos)
Crear Gua Interna de
Recepcin por Compra
Administrador,
Encargado de Recepcin,
Encargado de Despacho...
son roles que juegan las personas
de la Organizacin. ( No necesariamente
son tres personas distintas ).
Encargado
de Recepcin
(Empleado)
Proveedor
Iniciar Sistema de
Bodegas
Cliente
Encargado
de Despacho
(Empleado)
25/09/2002
Administrar Sistema de
Bodega de Recepcin
Administrar Sistema de
Bodega de Despacho
Administrador
(Empleado)
Comentarios relevantes :
1) Se trata de una transaccin
entre dos entidades, (con Cliente
y Encargado de Despacho).
2) Se trata de una transaccin
que implica una entrega /
recepcin de Productos.
3) Existe un Registro de Clientes .
4) Existe un Registro de Encargados de Despacho (Empleado).
5) Existe un Registro de Productos.
6) Se lleva un registro persistente
de la transaccin
25/09/2002
Encargado
de Despacho
(Empleado)
Cliente
Funciones Bsicas
Funcin
Categora
Capturar y activar opciones desde un Men de Opciones, aceptar Opcin (Seleccin Manual).
Desplegar la Interfaz de Creacin de Gua de Despacho, N de Gua de Despacho (correlativo) y
Fecha de la Transaccin, - aceptar eventual modificacin de Fecha (Ingreso Manual).
Capturar el Cdigo del Encargado de Despacho (Ingreso Manual).
Desplegar datos del Encargado de Despacho registrados en almacenamiento persistente
evidente
evidente
evidente
R1.7
Capturar la informacin del Cliente usando el RUT (Ingreso Manual) y desplegar datos
pertinentes del Cliente registrados en almacenamiento persistente.
Capturar N de Nota de Venta del Cliente (Ingreso Manual), verificar validez ( No Existencia
previa) y desplegarlo.
Capturar Fecha (Propia) de Nota de Venta del Cliente (Ingreso Manual) y desplegarla.
R1.8
evidente
R1.9
evidente
R1.10
R1.11
evidente
R1.12
Capturar la Cantidad de unidades del Producto respectivo (Ingreso manual). y calcular valor de
la lnea actualizando los totales de la Gua de Despacho en la Interfaz al dar OK a la lnea.
Grabar en el Detalle de la Gua de Despacho (lnea a lnea) los datos de cada lnea a medida que
se completa y calcula cada una de ellas.
Actualizar los valores de existencia y despachado de Productos (evitando doble actualizacin)
al dar OK a la Gua de Despacho en su totalidad.
Ofrecer un mecanismo de almacenamiento persistente.
evidente
R1.3
R1.4
R1.5
R1.6
R1.13
R1.14
R1.15
25/09/2002
evidente
evidente
evidente
evidente
evidente
oculta
oculta
oculta
Diseo de Clases :
Terminal Despacho
Encargado de Despacho
Cliente
Propsito:
Resumen:
Un Cliente contacta a un Encargado de Despacho para solicitar la Entrega de Productos que ha pedido, la Transaccin requerida la documenta con una Nota de
Venta. El Encargado de Despacho verifica los datos indicados por el Documento
y los ingresa en el Terminal de Despacho, al terminar confirma la Transaccin. El
Cliente recibe la 1 copia de la Nota de Venta firmada por el Encargado de Despacho, quien enva a sus respectivos destinos las copias firmadas de la Gua deDespacho y las restantes de la Nota de Venta ( segn Flujograma del Proceso ).
El Cliente se retira en direccin a la Caja.
Tipo:
Primario y real.
Referencias cruzadas: Funciones: R1.1, R1.2, R1.3, R1.4, R1.5, R1.6, R1.7, R1.8
R1.9, R1.10, R1.11, R1.12, R1.13, R1.14, R1.15
25/09/2002
13. El sistema calcula el valor de la lnea ingresada y lo acumula, desplegando los valores en T y U, a la vez que graba la lnea recin completada.
15. El sistema calcula los valores subtotales / total y los despliega / redespliega en los campos T y U, adems actualiza los datos de la
transaccin en el sistema de almacenamiento persistente.
Genera tres copias de la transaccin realizada utilizando la interfaz de salida indicada. Limpia la interfaz de entrada y posiciona el
cursor en A
25/09/2002
Diseo de Clases :
Caso de Uso ( Expandido ): Crear Gua
Interna de Despacho por Venta
( Productos con registro persistente)
Interfaz de Entrada
Gua Interna de Despacho por Venta
C
RUT Cliente
Nota de Venta N
L.
LL
Ciudad
M
Anulada
Fono
Precio
W
Y
Cerrar X
XX
Anular Z
Salir
25/09/2002
Fax
Cond. Pago
Descripcin
Cdigo
Cerrada
Fecha Despacho
Direccin Cliente
Comuna
Encargado Despacho
Razn Social Cliente
N Gua Despacho
Cantidad
Valor Neto
V
Grabar
Total acumulado
Diseo de Clases :
Caso de Uso ( Expandido ): Crear Gua Interna de
Despacho por Venta
( Productos con registro persistente)
Excepciones al Curso Normal de los Eventos:
25/09/2002
10
Diseo de Clases :
Caso de Uso ( Expandido ): Crear Gua
Interna de Despacho por Venta
( Productos con registro persistente)
Interfaz de Salida
Gua de Despacho N
RUT Cliente
999.999.999 - X
XXXXXXX
Cdigo
99
XXXXXXX
Ciudad
XXXXXXX
L.
999.999
XXXXXXX
Descripcin
Encargado
Despacho
25/09/2002
Caja
Telfono
99/99/9999
XXXXXXX
Fax
XXXXXXX
Cond. Pago
Precio
XXXXXXXXXXXX
Conforme :
99/99/9999
XXXXXXX
Encargado Despacho
XXXXXXX
N de Nota de Venta
999.999 Fecha
9999,99
XXXXXXX
XXXXXXX
Cantidad
9999
Valor Neto
999999,99
Despachador
Cliente
Total Neto
99999999,99
11
Diseo de Clases:
Modelo Conceptual (simplificado)
Crear Gua Interna de
Despacho por Venta
(Productos con registro persistente)
Nota : En este modelo se consideran
los conceptos mnimos. En un anlisis
y desarrollo posteriores se podran incluir conceptos tales como Bodega,
Terminal, Empresa, etc.
Encabezado de
Gua Interna de
Despacho por
Venta
N de Gua
Fecha
Cliente
Nombre
Empleados
Nombre
*
Productos
Cdigo
Descripcin
Precio
*
1
1
1..*
Clientes
RUT
Nombre
Direccin
Detalle de Gua
Interna de Despacho por Venta
Descripcin
Precio
Cantidad
Notas de
Venta
N Nota de Venta
Fecha
25/09/2002
12
Diseo de Clases:
Diagrama de Diseo
de Clases ( Borrador inicial )
Crear Gua Interna de
Despacho por Venta
(Productos con registro persistente)
Nota: Segn Craig Larman
( pg.257 ) : Si bien la presentacin de los diagramas de clases
es posterior a la creacin de los
diagramas de interaccin, en la prctica usualmente se crean en paralelo.
Muchas clases, mtodos y relaciones
pueden bosquejarse tempranamente
en la etapa de Diseo
Encabezado de
Gua Interna de
Despacho por
Venta
Empleados
Nombre
*
1
Clientes
*
Productos
Cdigo
Descripcion
Precio
N de Gua
Fecha
Cliente
Nombre
RUT
1..*
1 Nombre
Direccin
Detalle de Gua
Interna de Despacho por Venta
Descripcin
Precio
Cantidad
Notas de
Venta
N Nota de Venta
Fecha
25/09/2002
13
25/09/2002
Encargado de Despacho
:Sistema
14
25/09/2002
:Sistema
Encargado de Despacho
crearEncGuiaDespVenta(NumGuiaDespVen, FechaV)
ingresarCodEmpleado(CodigoEmpleado)
ingresarRutCliente(RutCliente)
ingresarNumNVFechaNVCond(NumNV, FecNV, CPag)
ingresarCodProducto(CodigoProducto)
Reiterar hasta
que no haya
ms Productos
que ingresar
ingresarPrecioCantidad(Precio,Cantidad)
grabarLnea()
terminarTransaccin()
salirAMen()
15
Diseo de Clases:
Crear Gua Interna de Despacho
por Venta
Operaciones del Sistema
(Productos con registro persistente)
(Base Craig Larman)
Sistema
crearEncGuiaDespVenta(NumGuiaDespVen, FechaV)
ingresarCodEmpleado(CodigoEmpleado)
ingresarRutCliente(RutCliente)
ingresarNumNVFechaNVCond(NumNV, FecNV, CPag)
ingresarCodProducto(CodigoProducto)
ingresarPrecioCantidad(Precio,Cantidad)
grabarLnea()
terminarTransaccin()
salirAMenu()
25/09/2002
16
Contrato
Nombre:
Responsabilidades:
Tipo:
crearEncGuiaDespVenta(NumGuiaDespVen, FechaV)
Aceptar (Click) en la opcin del Men.Desplegar la Interfaz de Creacin
de Gua de Despacho. Aceptar (Tab) para iniciar el ingreso de la transaccin. Crear instancias de EncGuiaDespVenta y DetGuiaDespVenta, obtener
y desplegar NumGuiaDespVen, obtener y desplegar FechaV desde la fecha
del sistema, opcionalmente aceptar modificacin manual de la fecha.
Sistema
Nota:
Los nombres de elementos usados
en los contratos hacen referencia
al Diagrama de Secuencia de pg. 15,
Salida:
Precondiciones:
N/A
El sistema tiene el Men y la opcin Crear Gua de Despacho por Venta
requerida instalados y activos
25/09/2002
17
Contrato
Nombre:
Responsabilidades:
Tipo:
ingresarCodEmpleado(CodigoEmpleado)
Aceptar el ingreso de CodigoEmpleado. Basado en CodigoEmpleado,
obtener y desplegar Nombre registrado en el sistema de almacenamiento
persistente. (Alternativa a Lista de Valores Posibles).
A continuacin posicionar el cursor en el campo E.
Sistema
Nota:
Referencias cruzadas:
Notas:
Excepciones:
Salida:
N/A
Precondiciones:
25/09/2002
18
Nota:
Los nombres de elementos usados
en los contratos hacen referencia
Contrato
Nombre:
ingresarRutCliente(RutCliente)
Responsabilidades:
Aceptar el ingreso de RutCliente, por su intermedio, obtener y desplegar los Datos del Cliente registrados en el sistema de almacenamiento persistente. A continuacin posicionar el cursor en el campo M.
Tipo:
Sistema
Referencias cruzadas:
R1.5, R1.15
Notas:
Excepciones:
Salida:
N/A
Precondiciones:
25/09/2002
19
Nota:
Los nombres de elementos usados
en los contratos hacen referencia
al Diagrama de Secuencia de pg. 15,
al Modelo Funcional de pg. N 32
y al Modelo de Clases de pg. N 33.
Contrato
Nombre:
Responsabilidades:
Tipo:
Sistema
Referencias cruzadas:
Notas:
Excepciones:
Salida:
Precondiciones:
Postcondiciones:
N/A
El sistema conoce a EncGuiaDespVenta.NumNV (Registrado oportunamente con anterioridad). Estn disponibles los Encabezados de Guas de
Despacho previas.
Se despleg NumNV, FecNV, CPag en los campos M, N y O
Se asign NumNV a EncGuiaDespVenta.NumNV (modificacin de atributo)
Se asign FecNV a EncGuiaDespVenta.FecNV (modificacin de atributo)
Se asign CPag a EncGuiaDespVenta.CPag (modificacin de atributo)
Se posicion el cursor en el campo P:Cdigo.
25/09/2002
20
Contrato
Nombre:
Aceptar el ingreso de CodigoProducto. Basado en CodigoProducto, obtener y desplegar los Datos del Producto registrados en el sistema de
almacenamiento persistente. Al oprimir (Tab) - fin de ingreso de CodigoProducto - asignar Nmero correlativo a la Instancia de DetGuaDespVenta.NumLinea y pasar al campo Q. Si la Descripcin es la correcta pasar (Tab) al campo R: Precio.
Tipo:
Sistema
Referencias cruzadas: R1.9, R1.10, R1.15
Responsabilidades:
Notas:
Nota:
ingresarCodProducto(CodigoProducto)
Excepciones:
Salida:
N/A
Precondiciones:
25/09/2002
21
Contrato
Nombre:
ingresarPrecioCantidad(Precio, Cantidad)
Responsabilidades:
Tipo:
Sistema
Nota:
Referencias cruzadas:
R1.11 y R1.12
Notas:
Excepciones:
Salida:
N/A
Precondiciones:
Postcondiciones:
25/09/2002
22
Contrato
Nombre:
Responsabilidades: Aceptar avance con (Tab) hasta la siguiente lnea de la interfaz, creando
una nueva Lnea de DetGuiaDespVenta. Calcular /ValorLnea y desplegarlo en T de la lnea previa. Grabar en almacenamiento persistente un
registro de DetGuiaDespVenta con los datos ingresados/calculados en la
lnea previa (anterior). Calcular /ValorTotal y desplegarlo en U. Posicionar el cursor en P de la nueva lnea.
Tipo:
Sistema
Referencias cruzadas: R1.13, R1.15
Notas:
Nota:
Los nombres de elementos usados
en los contratos hacen referencia
al Diagrama de Secuencia de pg. 15,
al Modelo Funcional de pg. N 32
y al Modelo de Clases de pg. N 33.
grabarLnea()
Usar Base de Datos MS Access. En este punto el sistema queda listo para
reiterar el ingreso de un nuevo cdigo CodigoProducto o caso contrario,
pasar a terminarTransaccin()
Excepciones:
N/A
Salida:
N/A
Precondiciones:
N/A
25/09/2002
23
Contrato
Nombre:
Responsabilidades: Aceptar (click) del Botn V (Grabar). Recalcular /ValorTotal y redesplegarlo en U. Grabar en almacenamiento persistente la instancia actual de
EncGuiaDespVenta.Limpiar los datos desplegados en la interfaz. Actualizar Productos.Existencia, Productos.Despachado y DetGuiaDespVenta.notAct. Posicionar en A el cursor.
Tipo:
Sistema
Referencias cruzadas:
Notas:
Usar Base de Datos MS Access. Al terminar, el sistema queda listo para ingresar una nueva transaccin o volver al Men de opciones.
Nota:
Los nombres de elementos usados
en los contratos hacen referencia
al Diagrama de Secuencia de pg. 15,
terminarTransaccin()
Excepciones:
Salida:
Precondiciones:
25/09/2002
24
Diseo de Clases:
Creacin de EncGuiaDespVenta
Diagramas de Colaboracin
ingresarOpcion(CrearGuiaDespacho)
(Productos con registro persistente)
(Base Craig Larman)
siguiente():NumGuia
ahora():Fecha
t1:Terminal
1:NumGuiaDespVen := siguiente():NumGuia
:EncGuiaDespVenta
Fecha
crearEncGuiaDespVenta(NumGuiaDespVen, FechaV)
t1:Terminal
25/09/2002
d1:EncGuiaDespVenta
l1:DetGuiaDespVenta
25
Diseo de Clases:
Creacin de EncGuiaDespVenta
Diagramas de Colaboracin
ingresarCodEmpleado(CodigoEmpleado)
ingresarRutCliente(RutCliente)
(Productos con registro persistente)
(Base Craig Larman)
ingresarCodEmpleado(CodigoEmpleado)
t1:Terminal
1:ingresarCodEmpleado(CodigoEmpleado)
d1:EncGuiaDespVenta
1.1:Nombre := consultar(CodigoEmpleado)
e1:Empleados
ingresarRutCliente (RutCliente)
t1:Terminal
2:ingresarRutCliente (RutCliente)
d1:EncGuiaDespVenta
25/09/2002
26
Diseo de Clases:
Creacin de EncGuiaDespVenta
Diagramas de Colaboracin
ingresarNumNVFechaNVCond(NumNV, FecNV, CPag)
:EncGuiaDespVenta
d1:EncGuiaDespVenta
La instancia especfica :
d1:EncGuaDespVenta hace la consulta a los Encabezados de Gua anteriores. ( Condicin de NO existencia previa )
25/09/2002
ll:DetGuiaDespVenta
27
Diseo de Clases:
Creacin de EncGuiaDespVenta
Diagramas de Colaboracin
ingresarCodProducto(CodigoProducto)
(Productos con registro persistente)
(Base Craig Larman)
ingresarCodProducto(CodigoProducto)
siguiente () : NumLinea
1:ingresarCodProducto(CodigoProducto)
2 *:[i:=1...6] NumLnea:= siguiente () : NumLinea
t1:Terminal
d1:EncGuiaDespVenta
1.1:aceptarCodigo(CodigoProducto)
2.1 *:[i:=1...6] NumLnea:= siguiente () : NumLinea
2.2:crearLinea(NumLinea)
1.2:Descripcion := consultar(CodigoProducto)
b1:Productos
25/09/2002
ll:DetGuiaDespVenta
28
Diseo de Clases:
Creacin de EncGuiaDespVenta
Diagramas de Colaboracin
ingresarPrecioCantidad(Precio, Cantidad)
grabarLnea()
(Productos con registro persistente)
(Base Craig Larman)
ingresarPrecioCantidad(Precio, Cantidad)
t1:Terminal
1:ingresarPrecioCantidad(Precio, Cantidad)
d1:EncGuiaDespVenta
1.1:aceptarDatos(Precio, Cantidad)
calcularTotales()
ll:DetGuiaDespVentaa
t1:Terminal
2: /ValorTotal := calcularTotales()
d1:EncGuiaDespVenta
ll:DetGuiaDespVenta
25/09/2002
29
Diseo de Clases:
Creacin de EncGuiaDespVenta
Diagramas de Colaboracin
terminarTransaccion()
(Primera Parte)
t1:Terminal
1: /ValorTotal := calcularTotales()
d1:EncGuiaDespVenta
t1:Terminal
ll:DetGuiaDespVenta
d1:EncGuiaDespVenta
ll:DetGuiaDespVenta
b1:Productos
25/09/2002
30
Diseo de Clases:
Creacin de EncGuiaDespVenta
Diagramas de Colaboracin
terminarTransaccion()
(Segunda Parte)
t1:Terminal
3:NumGuiaDespVen := siguiente():NumGuia
4:FechaV := ahora():Fecha
:EncGuiaDespVenta
Fecha
crearEncGuiaDespVenta(NumGuiaDespVen, FechaV)
t1:Terminal
d1:EncGuiaDespVenta
l1:DetGuiaDespVenta
25/09/2002
31
Encabezado de Gua
de Despacho
Diseo de Clases :
Modelo Funcional
(Detallado y Generalizado)
Crear Gua Interna de
Despacho por Venta
(Productos con Registro
persistente)
N Guia de Despacho
RUT Cliente
N Nota de Venta
Fecha Despacho
Cdigo Empleado
Fecha Nota de Venta
Condicin de Pago
/ Valor Total
Transaccin Cerrada
Transaccin Anulada
1. Crear Encabezado()
2. Aceptar datos()
6. Calcular Totales()
7. Cerrar Transaccin()
8. Anular Transaccin()
9. Copiar Transaccin()
10. Siguiente()
C/E y msg4
Terminal
Encabezado, detalle y totales segn
formato de pantalla adjunto.
1.Cargar correlativo y fecha de sistema
2. Aceptar datos.
3. Enviar mensajes de C/E a registros.
4. Enviar mensajes de consulta de datos
5. Calcular totales cumulativos
6. Enviar mensajes de actualizacin de
existencias y actualizar lnea a lnea
el registro de la transaccin
C/E y msg4
msg3,
msg6, msg10
y msg11
Detalle de Gua de
Despacho
C/E, msg4,
msg7, msg9
y msg10
N Lnea
Cdigo Producto
Precio
Cantidad
/ Valor lnea
notAct
Lnea Cerrada
Lnea Anulada
25/09/2002
Clientes
1. Crear Lnea()
2. Aceptar Codigo()
3. Aceptar datos()
6. Calcular Valor()
7. Cerrar Lnea()
8. Anular Lnea()
9. Copiar Lnea()
10. Siguiente()
11. notAct()
Al crear la lnea
de detalle, notAct
se incializa a: true
Productos
Cdigo Producto
Descripcin
U.Medida
Precio
Costo Unitario
Existencia Inicial
Existencia
Recibido
Despachado
4. Consultar datos()
6. Sumar Existencia()
7. Restar Existencia()
8. Sumar Recibido()
9. Sumar Despachado()
10. Existencia Negativa()
11. Calcular CPP()
RUT Cliente
Razn Social
Direccin
e_Mail
Comuna
Ciudad
Pas
Contacto
Fono
Fax
4. Consultar datos()
Empleados
Cdigo
Empleado
Nombre
...
4. Consultar datos()
C/E y msg4
Notas de Venta
N Nota
de Venta
Datos
4. Consultar datos()
32
EncGuaDespVenta
NumGuaDespVen
RUTCliente
NumNV
FechaV
CdigoEmpleado
FecNV
CPag
/ValorTotal
TransaccinCerrada
TransaccinAnulada
*
1
eMail
Comuna
Ciudad
Pas
Contacto
Fono
Fax
crearEncGuiaDespVenta()
ingresarCodEmpleado()
ingresarRutCliente()
ingresarNumNVFechaNVCond()
ingresarCodProducto()
ingresarPrecioCantidad()
restarExistencia()
sumarDespachado()
calcularTotales()
cerrarTransaccin()
anularTransaccin()
copiarTransaccin()
siguiente()
Notas de
Venta
1
NumNV
RUTCliente
FechaNV
etc...
25/09/2002
1
Productos
CodigoProducto
Descripcin
UMedida
Precio
CostoUnitario
ExistenciaInicial
Existencia
Recibido
Despachado
sumarExistencia()
restarExistencia()
sumarRecibido()
sumarDespachado()
existenciaNegativa()
calcularCPP()
Empleados
1
CdigoEmpleado
Nombre
1..*
DetGuaDespVenta
1
*
NumLinea
CodigoProducto
Precio
Cantidad
/ValorLnea
notAct
LneaCerrada
LneaAnulada
crearDetGuiaDespVenta()
crearLnea()
aceptarCodigo()
aceptarDatos()
calcularValor()
restarExistencia()
sumarDespachado()
cerrarLnea()
anularLnea()
copiarLnea()
siguiente()
notAct()
Al crear la lnea
de detalle, notAct
se incializa a: true
33