INVENTARIOS - COMPRAS


INVENTARIOS Y COMPRAS

Introducción
Inventarios son bienes tangibles que se tienen para la venta en el curso ordinario del negocio o para ser consumidos en la producción de bienes o servicios para su posterior comercialización. Los inventarios comprenden, además de las materias primas, productos en proceso y productos terminados o mercancías para la venta, los materiales, repuestos y accesorios para ser consumidos en la producción de bienes fabricados para la venta o en la prestación de servicios; empaques y envases y los inventarios en tránsito.
La base de toda empresa comercial es la compra y venta de bienes o servicios; de aquí la importancia del manejo del inventario por parte de la misma. Este manejo contable permitirá a la empresa mantener el control oportunamente, así como también conocer al final del período contable un estado confiable de la situación económica de la empresa.
Ahora bien, el inventario constituye las partidas del activo corriente que están listas para la venta, es decir, toda aquella mercancía que posee una empresa en el almacén valorada al costo de adquisición, para la venta o actividades productivas.
Por medio del siguiente trabajo se darán a conocer algunos conceptos básicos de todo lo relacionado a los Inventarios en una empresa, métodos, sistema y control.

Los requerimientos

a) Panorama general

El objetivo de este proyecto es la creación de un subsistema para el departamento de inventarios que se utilizara en un sistema general.

b) Metas

En términos generales, la meta es una mayor automatización de los inventarios y compras, para poder brindar un mejor servicio a la empresa.

Más concretamente, la meta incluye:

Ø  Tener un control automatizado de todos los almacenes.
Ø  Manejar una descripción detallada de cada proveedor.


c) Funciones del sistema

Funciones Básicas:

INVENTARIO

Referencia
Función
Categoría
R1.1
Registrar la información del producto(productos nuevos)
evidente
R1.2
Evaluar y catalogar el producto
oculta
R1.3
Actualizar todos los datos de los productos
oculta
R1.4
Dar un reporte de los productos
evidente
R1.5
Recibir una orden de pedido
evidente
R1.6
Seleccionar los productos de acuerdo a la orden
evidente
R1.7
Se realiza la salida de productos al punto de pedido
evidente
R1.8
Reporte de salida de productos
evidente
R1.9
Mostrar la descripción del producto registrado
evidente
R1.10
Cierre de Inventario
oculta














d) Atributos del sistema


Atributo
Detalles y restricciones de frontera
tiempo de respuesta
(restricción de frontera) Cuando ingresen productos nuevos a los almacenes, la descripción del producto aparecerá en un segundo.
metáfora de interfaz
(detalle) Ventanas orientadas a la metáfora de un formulario y cuadros de diálogo.
(detalle) Maximiza una navegación fácil con teclado.
tolerancia a fallas
(restricción de frontera) Se debe registrar todos los productos nuevos que ingresen al almacén con un plazo de 24 horas, aun cuando se produzcan fallas de energía o del equipo.
plataformas del sistema operativo
(detalle) Microsoft Windows XP






Ref.
Función
Categoría
Atributo
Detalles y restricciones
Categoría
R1.9
Mostrar la descripción del producto registrado
evidente
tiempo de respuesta
1 segundo como máximo
obligatorio



metáfora de interfaz
Pantallas basadas en formularios. Con colores.
obligatorio



tolerancia a fallas
Se debe registrar todos los productos nuevos que ingresen al almacén con un plazo de 24 horas, aun cuando se produzcan fallas de energía o del equipo.
Obligatorio



tiempo de respuesta
10 segundos como máximo
Obligatorio







Casos de uso: INVENTARIOS
Actores:        Empleado, Administrador del Sistema.
Propósito:    Controlar la entada y salida de los productos.
Resumen:    Llegan los productos recién elaborados a los almacenes, el empleado los registra y los clasifica. Luego se efectúa un reporte con todos los productos ingresados.

Tipo:              Primario y esencial.
                       
Referencias
cruzadas:    
Funciones: R1.1, R1.2, R1.3, R1.4, R1.5, R1.6 R1.7, R1.9, R1.10.

Descripción:           Se registran y se verifican todos los productos recién llegados, luego se los almacena y se dan un reporte con una descripción detallada de cada producto.





Funciones Básicas:

COMPRA PROVEEDORES


Referencia
Función
Categoría
R1.1
Verificamos las existencias sobre materia prima
evidente
R1.2
Realizar una orden de pedido sobre los materiales solicitados
evidente
R1.3
Dar un  reporte con todos los datos del cliente
evidente
R1.4
Mostrar la descripción del material y registrarlo respectivamente.
evidente
R1.5
Enviar pedido al departamento de Inventario
evidente
R1.6
Cerrar transacción de compra
oculta




d) Atributos del sistema



Atributo
Detalles y restricciones de frontera
tiempo de respuesta
(restricción de frontera) Cuando llega la materia prima, debemos registrar cada uno de los productos y luego clasificarlos de acuerdo a una descripción.
metáfora de interfaz
(detalle) Ventanas orientadas a la metáfora de un formulario y cuadros de diálogo.
(detalle) Maximizar una navegación fácil con teclado.
tolerancia a fallas
(restricción de frontera) Se debe registrar todos los materiales una vez que llegue a loa empresa con un plazo de 24 horas, aun cuando se produzcan fallas de energía o del equipo.
plataformas del sistema operativo
(detalle) Microsoft Windows XP







Ref.
Función
Categoría
Atributo
Detalles y restricciones
Categoría
R1.4
Mostrar la descripción del material y registrarlo respectivamente.
evidente
tiempo de respuesta
1 segundo como máximo
obligatorio



metáfora de interfaz
Pantallas basadas en formularios. Con colores.
obligatorio



tolerancia a fallas
Se debe registrar todos los materiales que  ingresen al almacén con un plazo de 24 horas, aun cuando se produzcan fallas de energía o del equipo.
Obligatorio



tiempo de respuesta
10 segundos como máximo
Obligatorio




Casos de uso: COMPRA PROVEEDORES
Actores:        Empleado de Ventas, Proveedor, Inventarios.
Propósito:    Abastecer a la empresa de la materia prima, para la elaboración de productos.
Resumen:    Emitimos una solicitud de venta al proveedor de la materia prima necesaria, se realiza una orden de pedido, luego recibimos el pedido y los almacenamos

Tipo:              Primario y esencial.
                       
Referencias
cruzadas:    
Funciones: R1.1, R1.2, R1.3, R1.4, R1.5, R1.6

Descripción:           Se crearan ordenes de pedido para cada producto solicitado y serán enviados a la planificación del almacén.


Modelo Conceptual




Categoría del concepto
Ejemplos
Objetos físicos o tangibles
MateriaPrima,Dado
Especificaciones, diseño o descripciones de cosas
EspecicacióndeProducto,
Lugares
Almacen
Transacciones
Comprar,Verificar,Almacenar
Línea o renglón de un elemento de transacciones
ComprasLineadeProducto
Rol de las personas
Proveedor,EncargadodeAlmacen
Contenedores de otras cosas
Compras
Cosas dentro de un contenedor
MateriaPrima,Producto
Otros sistemas de cómputo o electromecánicos externos al sistema
SistemaGeneral
Conceptos de nombres abstractos

Organizaciones
DepartamentodeInventario,DepartamentodeCompras
Eventos
Compra
Procesos (A menudo no están representados como conceptos, pero pueden estarlo)
CompraMateriaPrima
Reglas y políticas
PoliticadeAbastecimiento,Almacenaje
Catálogos
CatalogodeProductos,CatalogodeMateriPrima
Registros de finanzas, de trabajo, de contratos, de asuntos legales
ContratodeEmpleo,RegistrodeProveedor
Instrumentos y servicios financieros
LineadeAbastecimiento
Manuales y libros
ManualdePersonal, ManualdeReparaciones





Acción de los actores
Respuesta del sistema
1. Este caso de uso comienza cuando el Proveedor abastece a la empresa de materia prima y esta llega al almacén.

2. El Empleado del Almacén, cataloga y verifica el abastecimiento. Si hay más de un producto, el Empleado puede introducir también la cantidad.
3. Determina la cantidad de la materia prima y a la transacción de compra le agrega la información sobre la materia prima. Se muestra la descripción y el precio del producto actual.



A partir de la lista de categorías de conceptos podemos generar un conjunto de conceptos para nuestro problema del punto de venta:





Transacción
EspecificaciondeProducto
Producto
ComprasLineadeProductos
Almacén
Empleado
Compra
Proveedor
Pago
Gerente
CatalogodeProductos       



Por tanto, el modelo conceptual inicial del sistema de punto de almacenaje y compra de materia prima sería:
 


Atributos




Asociaciones




Identificación de asociaciones más comunes:



Categoría de la asociación
Ejemplos
A es una parte física de B
Almacen
A es una parte lógica de B
CompraLíneadeMateriaPrima-Compra
A está físicamente contenido en B
Almacen, Producto-Estante
A está contenido lógicamente en B
DescripcióndeProducto-Catálogo
A es una descripción de B
DescripcióndeProducto-Producto
A es un elemento de línea (o renglón) en una transacción o reporte B
CompraLíneadeMateriaPrima-Compra
A se conoce/introduce/registra/presenta/captura en B
Abastecimiento-Almacen
A es miembro de B
EmpleadodeAlmacen-Almacen
A es una unidad organizacional de B
Departamento-Almacen
A usa o dirige a B
EmpleadodeAlmacen-Almacen
A se comunica con B
Proveedor-EmpleadodeAlmacen



PAQUETES

Veamos el caso de uso extendido del AlmacenamientoDeMateriaPrima.


Acción de los actores
Respuesta del sistema
1. Este caso de uso comienza cuando el Gerente de la Embotelladora, pide de abastecimiento al proveedor de materia prima.

2. El proveedor Entrega la materia prima con un respectivo reporte que la empresa registrara en reportes con la descripción de cada producto.
3. Se generara una actualización de todos los productos ingresados y catalogados

4. Recibe una respuesta aprobando el abastecimiento

5. Registra en el sistema Inventarios la llegada de la materia prima.

6. Muestra el mensaje de autorización del abastecimiento


Veamos el caso de uso extendido del AlmacenamientoDeProductos.


Acción de los actores
Respuesta del sistema
1. Este caso de uso comienza cuando la fabrica empieza con la fabricación y se empieza con el almacenamiento, una vez entregada a los almacenes

2. El empleado catalogara los productos y los clasificara de acuerdo a una descripción.
3. Genera un reporte con todos los productos ingresados en almacén incluyendo el costo a la venta.

4. Recibe una aprobación del sistema con todos los productos registrados.

5. Registrar en Almacenes, todos los productos con una descripción y costo y el lugar donde están ubicados en almacén.

6. Muestra el mensaje de autorización ingreso de productos recién elaborados










DIAGRAMA DE MODELO DE ESTADOS









DIAGRAMAS DE SECUENCIA








CONTRATOS


Contrato
Nombre:
Solicitud Compra(Cliente)
Responsabilidades:
Capturar (registrar) el pedido de materia prima y consultar sobre una orden de pedido.
Tipo:
Sistema.
Referencias
cruzadas:
Funciones del sistema: R1.1, R1.2.
Casos de uso: Comprar Proveedores.
Notas:

Excepciones:
Si no existe la materia prima solicitada, indicar que se cometió un error.
Precondiciones:
Se está realizando una compra.
Postcondiciones:
ALMACENES controla el SOTCK y detecta necesidad.
ALMACENES emite SOLICITUD DE COMPRA (original y duplicado).
ALMACENES envía SOLICITUD DE COMPRA (original) a COMPRAS.
ALMACENES registra en STOCK.
ALMACENES controla archivo SOLICITUDES DE COMPRAS
Si existe retraso en la entrega ALMACENES avisa a COMPRAS.



Nombre:                   Selección del Proveedor
           
Responsabilidades:         Buscar la abastecer a la empresa de materia prima para poder tener más producción.

Tipo:                         Sistema.

Referencias
cruzadas:                

Notas:

Excepciones:          Si no se encuentra la materia prima, indicar que se cometió un error.

Precondiciones:    Si se encuentra al nuevo proveedor, se realizara la orden de pedido

Postcondiciones:  COMPRAS consulta ORIGEN DEL PRODUCTO
COMPRAS consulta PROVEEDORES.
COMPRAS emite PEDIDO DE COTIZACIÓN (duplicado).
COMPRAS archiva (transitoriamente) SOLICITUD DE COMPRA y PEDIDO DE COTIZACIÓN (duplicado) adjuntadas.
COMPRAS envía PEDIDO DE COTIZACIÓN (original) al PROVEEDOR.






Nombre:
Decisión Compra.
Responsabilidades:
Abastecer las necesidades del cliente y de su empresa
Tipo:
Sistema.
Referencias
cruzadas:

Casos de uso: Comprar Proveedores.
Notas:

Excepciones:
Si el proveedor no puede satisfacer la compra, indicar que se cometió un error.
Precondiciones:
Se está realizando una compra.
Postcondiciones:
COMPRAS recibe las COTIZACIONES de los PROVEEDORES.
COMPRAS controla las COTIZACIONES con MANUAL DE ANTECEDENETES DE COMPRAS.
COMPRAS emite ORDEN DE COMPRA (por triplicado).
COMPRAS envía ORDEN DE COMPRA (original) al PROVEEDOR.
COMPRAS adjunta y constituye LEGAJO DE TRAMITACIÓN DE COMPRA.
COMPRAS envía ORDEN DE COMPRA.





Nombre:
Recepción Compra.
Responsabilidades:
RECEPCIÓN controla (la mercadería recibida) REMITO (duplicado) con ORDEN DE COMPRA.
Tipo:
Sistema.
Referencias
cruzadas:

Casos de uso: Comprar Proveedores.
Notas:

Excepciones:
Si no se recibe la mercadería acordada, indicar que se cometió un error.
Precondiciones:
Se realiza la recepción de la Compra.
Postcondiciones:
ALMACENES controla (con mercadería).
ALMACENES conforma PARTE DE RECEPCIÓN (triplicado).
ALMACENES envía PARTE DE RECEPCIÓN.
RECEPCIÓN adjunta PARTE DE RECEPCIÓN a ORDEN DE COMPRA y archiva (definitivamente).
RECEPCIÓN Conforma REMITO (duplicado).
RECEPCIÓN envía REMITO (duplicado) a CUENTAS A PAGAR.
COMPRAS verifica PARTE DE RECEPCIÓN (original) con LEGAJO DE TRAMITACIÓN DE COMPRA (en archivo provisorio).
COMPRAS Conforma LEGAJO DE TRAMITACIÓN DE COMPRA.
COMPRAS archiva (definitivamente) LEGAJO DE TRAMITACIÓN DE COMPRA.





Nombre:
Almacenaje de la Materia Prima y Productos
Responsabilidades:
Almacenar toda la materia prima con un reporte que tenga la descripción de cada producto.
Tipo:
Sistema.
Referencias
cruzadas:

Casos de uso: Comprar de Proveedores.
Notas:

Excepciones:
Si no se almacena la mercadería, indicar que se cometió un error.
Precondiciones:
Se realiza la recepción de la Compra.
Postcondiciones:
ALMACENES verifica PARTE DE RECEPCIÓN con SOLICITUD DE COMPRA
Si no hay coincidencia comunica a COMPRAS.
ALMACENES retira del archivo (transitorio) SOLICITUD DE COMPRA.
ALMACENES destruye SOLICITUD DE COMPRA
ALMACENES actualiza archivo de STOCK en base al PARTE DE RECEPCIÓN.
Anula anotación En trámite de reposición.
Da Ingreso.
 ALMACENES archiva (definitivamente) PARTE DE RECEPCIÓN.




 
DIAGRAMAS DE COLABORACION















PATRONES

El patrón Experto:
Nombre:
Experto.
Problema:
¿Cuál es el principio fundamental en virtud del cual se asignan las responsabilidades en el diseño orientado a objetos?
Un modelo de clase puede definir docenas y hasta cientos de clases de software, y una aplicación tal vez requiera el cumplimiento de cientos o miles de responsabilidades. Durante el diseño orientado a objetos, cuando se definen las interacciones entre los objetos, se toman decisiones sobre la asignación de responsabilidades a clases. Si se hace en forma adecuada, los sistemas tienden a ser más fáciles de entender, mantener y ampliar, y se nos presenta la oportunidad de reutilizar los componentes en futuras aplicaciones.

Solución:
Asignar una responsabilidad al experto en información: la clase que cuenta con la información necesaria para cumplir la responsabilidad.

Beneficios:
Se conserva el encapsulamiento, ya que los objetos se valen de su propia información para hacer lo que se les pide. Esto provee un bajo nivel de acoplamiento, lo que favorece el hecho de tener sistemas más robustos y de fácil mantenimiento.

El comportamiento se distribuye entre las clases que cuentan con la información requerida, lo que ayuda a definir clases "sencillas" y más cohesivas, que son más fáciles de comprender y mantener.



Desde el punto de vista del patrón Experto, deberíamos buscar la clase de objetos que posee la información necesaria para saber la cantidad de materia prima y de productos se tiene en el almacén.



Se debe conocer todas las instancias PROVEDOR de una transacción, y el abastecimiento de la materia prima, y esto lo conoce únicamente la instancia del ALMACEN. Por tanto, desde el punto de vista del Experto, ALMACEN es la clase de objetos correcta para asumir esta responsabilidad. ALMACEN es el experto en información.

Entonces:


Todavía no terminamos. ¿Qué información hace falta para determinar el subtotal de la línea de productos? Se necesitan Proveedor y EspecificaciondeAlmacen.

Producto conoce su descripción y su correspondiente EspecificaciondeAlmacen. Por tanto, desde la perspectiva del patrón Experto, Producto debería calcular el sub resultado.

Producto no puede cumplir la responsabilidad de conocer y dar el subresultado, si no conoce el detalle de la transacción. EspecificaciondeAlmacen es un Experto en información para contestar su detalle.

En conclusión, para cumplir con la responsabilidad de conocer y dar el reporte de las transacciones, se asignaron tres responsabilidades a las tres clases de objetos:



Clase
Responsabilidad
Almacén
Conoce la cantidad de los productos
Producto
Conoce la descripción
EspecificaciondeAlmacen
Conoce el detalle de los productos



El patrón Creador:

El patrón Creador guía la asignación de responsabilidades relacionadas con la creación de objetos, tarea muy frecuente en los sistemas orientados a objetos. El objetivo de este patrón es encontrar un creador que debemos conectar con el objeto producido en cualquier evento.
Nombre:
Creador.
Problema:
¿Quién debería ser responsable de crear una nueva instancia de alguna clase?

La creación de objetos es una de las actividades más frecuentes en un sistema orientado a objetos. En consecuencia, conviene contar con un principio general para asignar las responsabilidades concernientes a ella. El diseño, bien asignado, puede apoyar un bajo acoplamiento, una mayor claridad, el encapsulamiento y la reutilización.

Solución:
Asignarle a la clase B la responsabilidad de crear una instancia de la clase A en uno de los siguientes casos:

· B agrega los objetos de A.
· B contiene los objetos de A.
· B registra las instancias de los objetos de A.
· B tiene los datos de inicialización que serán enviados a A cuando este objeto sea creado (B es un experto respecto a la creación de A).
B es un creador de los objetos A. Si existe más de una opción, prefiera la clase B que agregue o contenga la clase A.

Beneficios:
Se brinda apoyo a un bajo acoplamiento, lo cual supone menos dependencias respecto al mantenimiento y mejores oportunidades de reutilización.


 

Realizando este análisis se da que para que el Almacén pueda ser presentado mediante una descripción contiene (en realidad, agrega) muchos Producto (s). Es por esto que el patrón Creador sugiere que el Almacén es la clase idónea para asumir la responsabilidad de crear las instancias de Productos. Esta asignación de responsabilidades requiere definir el Almacén un método para hacerLineaCuenta.



El patrón Controlador:
Nombre:
Controlador.
Problema:
¿Quién debería encargarse de atender un evento del sistema?

Un evento del sistema es un evento de alto nivel generado por un actor externo. Es un evento de entrada externa. Se asocia a operaciones del sistema: las que se emiten en respuesta a los eventos del sistema.
Un controlador es un objeto de interfaz que se encarga de manejar un evento del sistema. Define además el método de su operación.

Solución:
Asignar la responsabilidad del manejo de mensajes de los eventos del sistema a una clase que represente alguna de las siguientes opciones:

· El "sistema" global (controlador de fachada).
· La empresa u organización global (controlador de fachada).
· Algo en el mundo real que es activo (por ejemplo el rol de una persona) y que pueda participar en la tarea (controlador de tareas).
· Un manejador artificial de todos los eventos del sistema de un caso de uso (controlador de casos de uso).

Utilice la misma clase controlador con todos los eventos del sistema en el mismo caso de uso.

Beneficios:
Garantiza que la empresa o los procesos de dominio sean manejados por la capa de los objetos del dominio y no por la interfaz.



Durante el análisis del comportamiento del sistema, sus operaciones son asignadas al tipo Sistema, para indicar que son operaciones del sistema.


Pero esto no significa que una clase llamada Sistema las ejecuta durante el diseño. Durante el diseño, a la clase Controlador se le asigna la responsabilidad de las operaciones del sistema.
Según el patrón Controlador, disponemos de las siguientes opciones:

ReportedeAlmacen
Representa el "sistema" global.
Almacén
Representa la información general de todos los materiales y productos
Proveedor
Representa algo en el mundo real que está activo (por ejemplo el rol de una persona) y que puede intervenir en la tarea.
ManejadordelAlmacen
Representa un manejador artificial de todas las operaciones del sistema de un caso de uso.


Las operaciones del sistema, detectadas en el análisis, se asignarán al Almacén.