[Php-avanzado] Sugerencia

Martin Urciuoli myrrel en gmail.com
Mie Dic 16 14:56:09 ART 2015


Agrego la versión 3.
Hice muchos cambios, agregué gestion de imagenes.
Tengo dudas con respecto a la factura.
Usted dirá como seguimos. Gracias!


El 15 de diciembre de 2015, 7:17, Leonardo Tadei - Pegasus Tech Supply <
leonardot en pegasusnet.com.ar> escribió:

> Hola Martín,
>
> El sáb, 12-12-2015 a las 21:05 -0300, Martin Urciuoli escribió:
> > Profe agrego nueva version,
>
>         Genial! Ya casi está...
>
> >  modifiqué lo que me apunto, no estoy seguro sobre lo de ciudades y
> > provincias, ya usted verá.
>
>         Te comento más abajo.
>
> > Me sorprendo, porque en cada version se vuelve mas claro y mas grande.
> > Genial!.
>
>         Sí. Pasa siempre, aunque se tengan años escribiendo software.
>         Imaginate la metida de pata que sería, por ejemplo, haber estimado
> el
> tiempo de entrega y el costo del trabajo con tu primera versión, que más
> o menos era lo que te imaginabas al principio...
>
>         Vamos a la SRS:
>
> RF 1 y 2: está bien pero es mejor al revés. Si planteás que las ciudades
> existen solas y que las Provincias tienen Ciudades, estás planteando una
> relación 1-N entre los atributos, pero si "te parás" del otro lado,
> podés decir que tenés Provincias y que las Ciudades tiene Provincia, en
> singular, con lo que te queda una relación 1-1 entre los atributos, que
> siempre es más fácil de modelar.
>         Fijate que no estoy hablando de tablas ni nada, sino de la
> semántica
> del problema.
>
> RF 5: si bien ponés la referencia al RF3, ahí debería decir "...
> Clientes con su Tipo de Cliente.", porque es así como se llama el RF3.
> Tu profesor de literatura te mataría, pero las reglas de las SRS llevan
> a repetir exactamente la definición a la que se hace referencia.
>         Ojo al plural! Según el diccionario, un cliente no puede tener más
> de
> un Tipo de Cliente a la vez, así que eso sería en singular.
>         Te falta hacer referencia a los demás RF que hacen falta para
> definir a
> un Cliente: "El sistema debe gestionar Clientes con su Tipo de Cliente
> [3], Localidad [], Provincia [], Medio de Envío [], Régimen [] y Tipo de
> Comprador []"
>
>         Esto significa que Medios de Envío, Regímenes y Tipos de Comprador
> tienen que estar especificados antes para poder hacer referencia a
> ellos. Supongo que algunos no se gestionarán sino que solamente se
> mostrarán (es decir, el que use el software no podrá ni agregar no
> borrar ni modificar).
>
>         Con esta pauta del Cliente, hacé lo mismo para Proveedores,
> Compras,
> Remitos y Facturas.
>
>         Seguimos!!!
>
>
>
>
> fleaMarket.com // MercadoDePulgas.com
> -------------------------------------
>
> El proyecto consiste en el desarrollo de una aplicación Web que
>  gestiona la venta de Producto Varios de manera online.
>
> 1.      El sistema debe gestionar Ciudades.
> 2.      El sistema debe gestionar Provincias con sus Ciudades [1].
> 3.      El sistema debe gestionar Tipos de Clientes.
> 4.      El sistema debe gestionar Tipos de Compradores.
> 5.      El sistema debe gestionar Clientes con sus Tipos [3].
> 6.      El sistema debe gestionar Proveedores.
> 7.      El sistema debe gestionar Administradores.
> 8.      El sistema debe gestionar Categorias.
> 9.      El sistema debe gestionar Productos con sus Categorías
>         9.1     El sistema debe listar Productos por Categorías.
>         9.2     El sistema debe buscar Productos por Categorías.
>         9.3     El sistema debe buscar Productos por Nombre.
>         9.4     El sistema debe buscar Productos por Descripción.
>         9.5     El sistema debe buscar Productos por Proveedor.
>         9.6     El sistema debe buscar Productos por fecha de alta.
> 10.     El sistema debe registrar Compras.
> 11.     El sistema debe emitir Reportes.
>         11.1 El sistema debe emitir Reportes de Productos mas vendidos.
>         11.2 El sistema debe emitir Reportes de Productos menos
> vendidos.
>         11.3 El sistema debe emitir Reportes de deuda con Proveedores.
>         11.4 El sistema debe emitir Reportes de deuda de Clientes.
> 12.     El sistema debe emitir Remitos.
> 13.     El sistema debe emitir Facturas
> 14.     El sistema debe gestionar Transportistas.
> 15.     El sistema debe notificar mediante email al Cliente que su
> pedido fue realizado,  adjuntando Remito de la compra, junto con la
> dirección de envío, y el Transporte a utilizar.[3][12][14]
>
> Diccionario
> -----------
>
> Ciudad:  localidad.
> La Rioja: ## ¿Tengo que expecificar todas las localidades?
>                         Chamical, Chepes, Chilecito, La Rioja, Patquía,
> Talampaya.
>
> Provincia:
> Buenos Aires, Catamarca, Chaco, Chubut, Ciudad Autónoma de Buenos Aires,
> Córdoba, Corrientes, Entre Ríos, Formosa, Jujuy, La Pampa, La Rioja,
> Mendoza, Misiones, Neuquén, Río Negro, Salta, San Juan, San Luis, Santa
> Cruz, Santa Fe, Santiago del Estero, Tierra del Fuego, Tucumán.
>
>
> Tipo de Cliente:
>         Cliente por menor (compras de confecha, productos, unidades por
> producto, valor por unidadsumidor final).
>         Cliente por mayor(compras de otros comercios, para luego ser
> revendidas).
>
> Tipo de Comprador: asiduo, esporádico, moroso. (donde según el caso
> recibe ofertas o no).
>
> Régimen: lista de precio que se aplica de manera arbitraria al Cliente.
>
> Medio de Envío: será aportado por el Cliente al momento de la compra.
>
> Cliente :  Nombre/Razón Social, dirección, Ciudad, Provincia, CUIT/CUIL,
> email, web, teléfono,  fecha de “alta de Cliente”, dirección de envío,
> medio de envío, contraseña, Tipo de Cliente, Régimen, plazo de pago,
> Tipo de Comprador.
>
> Proveedor:  Nombre/Razón Social, dirección, Ciudad, Provincia,
> CUIT,email, web,teléfono, saldo, Tipo de Cliente, observaciones,
> condiciones de pago(cuentas bancarias o método de transferencia), plazos
> de pagos(que aportaran o no beneficios según el tiempo de pago).
>
> Categoría:  Nombre, Descripción. (ej: Novedades,
> Ofertas,Bazar,Herramientas, Jardineria,etc)
>
> Producto:  Nombre, Descripción, COD/REF,  Cantidad por Bulto, Categorias
> ( puede ser una o muchas), Costo, Precio_publico, Precio_Mayorista ,
> fecha de alta, Proveedor.
>
> Administrador: persona que se ocupará de la carga del sistema. Creación
> de los Productos, y sus correspondientes Categorías. No podrá modificar
> la estructura de la base de datos.
>
> Compra: (¿carrito de compras?) seleccion que hace el Cliente, de
> productos a adquirir ( fecha, producto, unidades por producto, valor por
> unidad ).
>
> Reporte: lista informativa o de caracter estadistico.
>
> Remito:  número, Nombre/Razon Social de la Empresa(que envía),  detalle
> de compra, fecha.
>
> Condicion de Venta : contado, cuenta corriente.
>
> Factura:  Nombre/Razon Social de la empresa que la emite, dirección,
> CUIT, Ingresos Brutos, inicio de actividades, IVA, responsable
> Inscripto, CUIT, Condicion de Venta, número de remito, número de
> factura, fecha de emisión, Nombre/Razon Social a quien va dirigida,
> dirección, CUIT,  cantidad, descripción, precio unitario, importe.
>
> Transportista: Nombre/Razón Social, dirección, Ciudad, Provincia, CUIT,
> email, web, teléfono, observaciones.
>
>
> --
> Leonardo Tadei
> leonardot en pegasusnet.com.ar
> Web: http://leonardo.tadei.com.ar
> Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
>
> _______________________________________________
> Lista de correo: Php-avanzado
> Mensajes a la lista: Php-avanzado en pato2.fi.mdp.edu.ar
> Administración Web:
> http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> Desubscripción:
> php-avanzado-request en pato2.fi.mdp.edu.ar?subject=unsubscribe
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://www3.fi.mdp.edu.ar/pipermail/php-avanzado/attachments/20151216/cb8efebb/attachment-0001.html>
------------ próxima parte ------------
fleaMarket.com // MercadoDePulgas.com
-------------------------------------


 
El proyecto consiste en el desarrollo de una aplicación Web que
 gestiona la venta de Producto Varios de manera online.

Requerimientos Funcionales.
---------------------------

Nota : Las referencias señaladas con una asteriscos [**], son definidas en el diccionario.

1.	El sistema debe gestionar Provincias.
2.	El sistema debe gestionar Localidades con sus Provincias[1].
3.	El sistema debe gestionar Tipos de Clientes.
4.	El sistema debe gestionar Tipos de Compradores.
5.	El sistema debe gestionar Clientes con sus Tipo de Cliente[3], Localidad[2], Provincia[1], Medio de Envío[**6], Régimen[**5], y Tipo de Comprador[**4].
6.	El sistema debe gestionar Proveedores con su Localidad[2], Provincia[1], Tipo de Cliente[3], Condiciones de Pago[**20], Plazos de pago[**21].
7.	El sistema debe gestionar Administradores.
8.	El sistema debe gestionar Categorias.
9.  El sistema debe gestionar Imágenes.
10.	El sistema debe gestionar Productos con sus Categorías[8], Imagenes[9] Proveedor[6],
	10.1	El sistema debe listar Productos por Categorías.
	10.2	El sistema debe buscar Productos por Categorías.
	10.3	El sistema debe buscar Productos por Nombre.
	10.4	El sistema debe buscar Productos por Descripción.
	10.5	El sistema debe buscar Productos por Proveedor.
	10.6	El sistema debe buscar Productos por fecha de alta.
11.	El sistema debe emitir Reportes.
	11.1 El sistema debe emitir Reportes de Productos mas vendidos.
	11.2 El sistema debe emitir Reportes de Productos menos vendidos.
	11.3 El sistema debe emitir Reportes de deuda con Proveedores[6].
	11.4 El sistema debe emitir Reportes de deuda de Clientes[5].
12.	El sistema debe registrar Compras.	
13.	El sistema debe emitir Remitos.
14.	El sistema debe emitir Facturas
15.	El sistema debe gestionar Transportistas con su Localidad[2], Provincia[1].
16.	El sistema debe notificar mediante email al Cliente que su pedido fue realizado,  adjuntando Remito de la compra, junto con la dirección de envío, y el Transporte a utilizar.[3][13][15]

Diccionario
-----------
**1. Provincia:
Buenos Aires, Catamarca, Chaco, Chubut, Localidad Autónoma de Buenos Aires, Córdoba, Corrientes, Entre Ríos, Formosa, Jujuy, La Pampa, La Rioja, Mendoza, Misiones, Neuquén, Río Negro, Salta, San Juan, San Luis, Santa Cruz, Santa Fe, Santiago del Estero, Tierra del Fuego, Tucumán.

**2. Localidad:  localidad.

**3. Tipo de Cliente: 
	Cliente por menor (compras de confecha, productos, unidades por producto, valor por unidadsumidor final).
	Cliente por mayor(compras de otros comercios, para luego ser revendidas).

**4. Tipo de Comprador: asiduo, esporádico, moroso. (donde según el caso recibe ofertas o no).

**5. Régimen: lista de precio que se aplica de manera arbitraria al Cliente.

**6. Medio de Envío: será aportado por el Cliente al momento de la compra.

**7. Nombre/Razón Social: nombre del particular, o denominacion comercial de la empresa.

**8. Dirección: calle, número, piso, departamento.

**9. CUIT/CUIL:

**10. Email: correo electrónico.

**11. WEB: url de la empresa.

**12. Teléfono: característica de Localidad mas número. 

**13. Fecha de “alta”: fecha que ingresa al sistema. 

**14. Dirección de envío: dirección donde se enviaran los productos.

**15. Contraseña: composición alfanumérica que será usada para el ingreso al sístema.

**16. Plazo de pago: periodo máximo para cancelación de deuda.

**17. Cliente :  
	Nombre/Razón Social[**7],
	Dirección[**8], 
	Localidad[**2], 
	Provincia[**1], 
	CUIT/CUIL[**9], 
	Email[**10], 
	WEB[**11], 
	Teléfono[**12], 
	Fecha de “alta”[**13], 
	Dirección de envío[**14], 
	Medio de envío[**6], 
	Contraseña[**15], 
	Tipo de Cliente[**3], 
	Régimen[**5], 
	Plazo de pago[**16], 
	Tipo de Comprador[**4].


**18. Saldo: deuda.

**19. Observaciones:

**20. Condiciones de pago: cuentas bancarias o método de transferencia.

**21. Plazos de pago: aportarán o no beneficios según el tiempo establecido.

**22. Proveedor:  
	Nombre/Razón Social[**7], 
	Dirección[**8], 
	Localidad[**2], 
	Provincia[**1], 
	CUIT[**9], 
	Email[**10], 
	WEB[**11], 
	Teléfono[**12], 
	Saldo[**18], 
	Tipo de Cliente[**3], 
	Observaciones[**19], 
	Condiciones de Pago[**20], 
	Plazos de pago[**21].

**23. Categoría:  Nombre, Descripción. (ej: Novedades, Ofertas,Bazar,Herramientas, Jardineria,etc)

**24. COD/REF: codigo o referencia propia de cada producto.

**25. Cantidad por Bulto: número de unidades por bulto (bulto: caja, bolsa, atado).

**26. Producto:  
	Nombre, 
	Descripción, 
	COD/REF[**24],  
	Cantidad por Bulto[**25], 
	Categorias ( puede ser una o muchas)[**23], 
	Imagen: puede ser una o muchas,
	Video: video que mostrara su uso (no siempre disponible),
	Costo, 
	Precio_publico, 
	Precio_Mayorista, 
	Fecha de “alta”[**13], 
	Proveedor[**22].


**27. Administrador: persona que se ocupará de la carga del sistema. Creación de los Productos, y sus correspondientes Categorías. No podrá modificar la estructura de la base de datos.


**28. Compra: (¿carrito de compras?) seleccion que hace el Cliente, de productos a adquirir ( fecha, producto, unidades por producto, valor por unidad ).

**29. Reporte: lista informativa o de caracter estadistico.
**30. Remito:  número, Nombre/Razón Social[**7] de la Empresa(que envía),  detalle de compra, fecha.

**31. Condicion de Venta : contado, cuenta corriente.

**32. Transportista: 
	Nombre/Razón Social[**7], 
	Dirección[**8], 
	Localidad[**2], 
	Provincia[**1], 
	CUIT[**9], 
	Email[**10], 
	WEB[**11], 
	Teléfono[**12], 
	Observaciones[**19].

**33. Factura:
		--- Datos de la empresa que la emite ---  
	Nombre/Razón Social[**7] de la empresa que la emite, 
	Dirección[**8], 
	CUIT[**9],  
	Inicio de actividades, 
		--- Datos de la empresa/particular que la recibe ---  
	Nombre/Razón Social[**7] de la empresa que la emite, 
	Dirección[**8], 
	CUIT[**9],  
	Ingresos Brutos, 
	Responsable Inscripto, 
	Condicion de Venta[**19], 
		--- Datos por la Compra ---	
	IVA (impuesto al valor agregado), 
	Número de Remito[**30], 
	Número de Factura, 
	Fecha de emisión, 
	Cantidad por producto, 
	Descripción del producto[**26], 
	Precio unitario del producto[**26], 
	Importe.



Más información sobre la lista de distribución Php-avanzado