[Php-avanzado] Fwd: SRS tienda virtual

Maximiliano Lizondo lizondomaximiliano en gmail.com
Lun Nov 18 20:02:35 ART 2013


Leo, hice las correcciones que hablamos en su momento. Decime por favor si
están correctas.
Ahora que lo veo, no me cierra mucho lo de "Listas de precios de
productos". Es decir, ¿no sería más sencillo agregar los atributos de
"Listas...." a "Productos"? y entonces, los productos tendrían dos precios:
uno para los clientes de tipo particular y otro para los clientes de tipo
revendedor. Luego, cuando el cliente arme su pedido el sistema le mostraría
los precios de productos correspondientes a su tipo de cliente.

RESUMEN:

La aplicación consiste en una tienda virtual.

Dicha aplicación podrá dar de alta, baja, modificar y presentar en pantalla
a proveedores, productos  y clientes con sus respectivos atributos.

El cliente podrá registrarse y obtener una cuenta personal. Además, podrá
seleccionar productos y agregarlos a su lista de compras.

Es importante señalar que la aplicación utilizará una de dos posibles
listas de precios de productos, dependiendo del tipo de cliente (cliente
tipo particular o cliente tipo revendedor). Dicha información es solicitada
por la aplicación al momento de registrarse el cliente.

Cuando el cliente finalice la selección de productos y método de envío, la
aplicación presentará en pantalla el precio total del pedido. Teniendo en
cuenta los datos personales del cliente, la aplicación podrá calcular el
precio de envío al lugar de residencia del cliente.

A continuación, la aplicación enviará la información detallada del pedido a
una casilla de correo electrónico.



REQUERIMIENTOS FUNCIONALES:

1- El sistema debe gestionar países.

2- El sistema debe gestionar provincias con su país[1].

3- El sistema debe gestionar localidades con su provincia[2].

4- El sistema debe gestionar proveedores con su país[1], provincia[2] y
localidad[3].

5- El sistema debe gestionar formatos de productos.

6- El sistema debe gestionar productos con sus proveedores[4] y formatos de
productos[5].

7- El sistema debe gestionar tipos de documento.

8- El sistema debe gestionar tipos de clientes.

9- El sistema debe gestionar clientes con su país[1], provincia[2],
localidad[3], tipo de documento[7] y tipo de cliente[8].

10- El sistema debe gestionar tipos de moneda.

11- El sistema debe gestionar listas de precios de productos con sus
productos[6], tipos de moneda[10] y tipo de cliente[8].

12- El sistema debe gestionar tipos de envío con su país[1], provincia[2],
localidad[3].

13- El sistema debe gestionar estados de pedidos.

14- El sistema debe registrar pedidos con sus clientes[9], productos[6],
tipo de envío[12] y estados de pedidos[13].

15- El sistema debe enviar los pedidos[14] a una casilla de correo
electrónico.



DICCIONARIO:

Países: nombre de país

Provincias: nombre de provincia, país

Localidades: nombre de localidad, país, provincia, código postal

Proveedores: razón Social, país, provincia, localidad, dirección, email,
página web, teléfono

(Se considera proveedores a sellos discográficos y comerciantes, que son
gestionados por el sistema UNICAMENTE a través de un usuario administrador)

Tipos de documento: país, DNI/CI/LE/LC

Tipos de envío: país, provincia, localidad, correo argentino/correo
privado/encomienda por ómnibus, precio de envío

Clientes: nombre de cliente, tipo de cliente, tipo de documento, número de
documento, país, provincia, localidad, dirección, email.

(Se considera cliente a cualquier individuo que accede al sistema para
registrarse en el mismo)

Tipos de clientes: particular/revendedor

Tipos de moneda: nombre de moneda, país

Productos: nombre de producto, código de identificación, proveedor, formato
de producto

Listas de precios de productos: productos, tipos de moneda, precio de
producto, tipo de cliente

Formatos de productos: nombre de formato, CD/TAPE/VINYL

Estados de pedidos: aceptado/cancelado

Pedidos: fecha de emisión, clientes, productos, tipo de envío, precio total
del pedido, estado de pedido


El 17 de octubre de 2013 13:02, Leonardo Tadei - Pegasus Tech Supply <
leonardot en pegasusnet.com.ar> escribió:

> Hola Maximiliano,
>
> El jue, 17-10-2013 a las 12:38 -0300, Maximiliano Lizondo escribió:
> > Leo, paso a aclarar las dudas:
> >
> >
> > *Si, la idea es que el administrador del site pueda tener su interfaz
> > administrativa y pueda dar de alta, baja, modificar y listar a los
> > distribuidores (es importante poder hacer esto, así se puede mantener
> > actualizada la tabla correspondiente y de esa manera el "cliente"
> > puede ver los productos con la info actualizada). Por otro lado, los
> > "clientes" (definidos según el diccionario: cualquiera que se registre
> > en el site) tendrán su interfaz pública para registrarse y tener su
> > cuenta personal para realizar pedidos, etc.
>
>
>         Ok. Por tu redacción, parecía que el propio Distribuidor iba a
> entrar a
> cargar sus datos.
>         La parte en la introducción que aclara "ambos únicamente través del
> administrador de la aplicación" es la parte confusa... no es relevante
> para la funcionalidad quién puede hacer una cosa y quién no.
>
> > *A ver si puedo explicarme bien con esto, porque es más sencillo de lo
> > que parece: quiero que cuando el administrador de el alta un
> > distribuidor, sea necesario ingresar todos los atributos que puse en
> > "Distribuidores" en el diccionario (razon social, país, etc.). Ahora,
> > cuando un "Cliente" (de nuevo, cualquiera que se registre en el site)
> > se registre quiero que sea necesario ingresar en algún campo "Tipo de
> > cliente" (con uno de dos valores: particular o distribuidor). Esto
> > servirá más que nada para saber qué lista de precios le corresponde
> > ok? con lo cual, "Tipo de Cliente" es un mero atributo de la "Lista de
> > precios de productos". En definitiva, uno tiene que ver con la
> > interfaz administrativa ("Distribuidores") y la otra con la interfaz
> > pública ("Tipo de Cliente").
>
>         Es sencillo, pero si usás la misma palabra para referirte a dos
> cosas
> distintas, jamás podremos hablar de esto sin aclararlo o sin que se
> presente la duda.
>         Cambiá una de las dos palabras. En el mensaje anterior te sugiero
> alguno sinónimos razonables.
>
> > Por último, voy a definir "Pedidos" en el diccionario así es más
> > sencillo la última parte de los requerimientos. En ese caso, ¿sería
> > correcto definir el requerimiento como "El sistema debe gestionar
> > pedidos con su..."?
>
>         Generalmente los pedidos no se gestionan, sino que solo se
> registran,
> para no alterar lo que ya pasó.
>         Lo único que implica esto es poder marcar un pedido como
> "cancelado",
> con lo que aparece el término "estados de pedidos".
>
> > Saludos y gracias!
>
>         Por nada!
>
>
> > El 16 de octubre de 2013 18:05, Leonardo Tadei - Pegasus Tech Supply
> > <leonardot en pegasusnet.com.ar> escribió:
> >         Hola Maximiliano,
> >
> >         El mar, 15-10-2013 a las 16:12 -0300, Maximiliano Lizondo
> >         escribió:
> >         > Leo, hice algunas modificaciones de los requerimientos
> >         teniendo en
> >         > cuenta las indicaciones que me hiciste de la versión
> >         anterior. Traté
> >         > de explicar lo mejor posible el funcionamiento de la
> >         aplicación en el
> >         > resumen y a través del diccionario debería quedar más claro
> >         todo.
> >
> >
> >                 Genial.
> >                 Te hago comentarios o consultas intercalados:
> >
> >
> >         > RESUMEN:
> >         > --------
> >         >
> >         >
> >         > La aplicación consiste en una tienda virtual.
> >         > Dicha aplicación podrá dar de alta, baja, modificar y
> >         presentar en
> >         > pantalla a distribuidores, productos (ambos únicamente
> >         través del
> >         > administrador de la aplicación) y clientes con sus
> >         respectivos
> >         > atributos.
> >
> >
> >                 Esto quiere decir que los distribuidores tienen una
> >         interfaz
> >         administrativa, y que los clientes tienen una interfaz pública
> >         distinta?
> >
> >         > El cliente podrá registrarse y obtener una cuenta personal.
> >         Además,
> >         > podrá seleccionar productos y agregarlos a su lista de
> >         compras.
> >         > Es importante señalar que la aplicación utilizará una de dos
> >         posibles
> >         > listas de precios de productos, dependiendo del tipo de
> >         cliente
> >         > (particular o distribuidor).
> >
> >
> >                 Un "cliente de tipo distribuidor" es lo que en el
> >         primer párrafo llamás
> >         "distribuidor" ?
> >
> >         >  Dicha información es solicitada por la aplicación al
> >         momento de
> >         > registrarse el cliente.
> >         > Cuando el cliente finalice la selección de productos y
> >         método de
> >         > envío, la aplicación presentará en pantalla el precio total
> >         > del pedido. Teniendo en cuenta los datos personales del
> >         cliente, la
> >         > aplicación podrá generar el precio de envío al lugar de
> >         residencia del
> >         > cliente.
> >         > A continuación, la aplicación enviará la información
> >         detallada del
> >         > pedido a un casilla de correo electrónico.
> >         >
> >         >
> >         >
> >         >
> >         > REQUERIMIENTOS FUNCIONALES:
> >         > ---------------------------
> >         >
> >         >
> >         > 1- El sistema debe gestionar países.
> >         > 2- El sistema debe gestionar provincias con su país[1].
> >         > 3- El sistema debe gestionar localidades con su
> >         provincia[2].
> >
> >
> >                 Te falta "y con su país[1]".
> >                 Los requerimientos deben ser explícitos y no asumir
> >         que porque la
> >         provincia tiene país, entonces la localidad lo va a tener
> >         porque tiene
> >         provincia.
> >
> >         > 4- El sistema debe gestionar distribuidores con su país[1],
> >         > provincia[2] y localidad[3].
> >         >
> >         >
> >         > 5- El sistema debe gestionar formatos de producto.
> >         > 6- El sistema debe gestionar productos con sus
> >         distribuidores[4] y
> >         > formato de producto[5].
> >
> >
> >                 En el diccionario tenés distribuidor en singular y acá
> >         en plural.
> >                 Si tiene solo uno, ponelo en singular en ambos lugares
> >         y si puede tener
> >         más de uno, ponelo en plural.
> >
> >         > 7- El sistema debe gestionar tipos de documento.
> >
> >
> >                 Según el diccionario, te falta el "con su país".
> >
> >         > 8- El sistema debe gestionar tipos de cliente.
> >         > 9- El sistema debe gestionar clientes con su país[1],
> >         provincia[2],
> >         > localidad[3], tipo de documento[7] y tipo de cliente[8].
> >         >
> >         >
> >         > 10- El sistema debe gestionar tipos de moneda.
> >
> >
> >                 Según el diccionario, te falta el "con su país".
> >
> >         > 11- El sistema debe gestionar listas de precios de productos
> >         con sus
> >         > productos[6], tipos de moneda[10] y tipo de cliente[8].
> >         > 12- El sistema debe gestionar tipos de envío con su país[1],
> >         > provincia[2], localidad[3].
> >         >
> >         >
> >         > 13- El sistema debe registrar los productos[6] seleccionados
> >         por cada
> >         > cliente[9], según la lista de precios de productos[11]
> >         correspondiente
> >         > a dicho cliente.
> >
> >
> >                 Un detalle: debería decir "lista de precios de
> >         productos[11]
> >         correspondiente a dicho tipo de cliente."
> >
> >                 Especificás que los que tienen lista de precios son
> >         los Tipos de
> >         Clientes, y no los Clientes como decís acá.
> >
> >                 Te falta poner el diccionario de esto, que estás
> >         omitiendo nombrar,
> >         pero que tranquilamente podría llamarse "pedido".
> >                 Poner solo "registrar productos" parece una
> >         contradicción con el RF6
> >
> >         > 14- El sistema debe registrar el tipo de envío[12]
> >         seleccionado por
> >         > cada cliente[9] según su país[1], provincia[2] y
> >         localidad[3].
> >
> >
> >                 Idem anterior.
> >
> >         > 15- El sistema debe enviar la información relativa a los
> >         productos
> >         > seleccionados por cada cliente[13] y al tipo de envío
> >         seleccionado por
> >         > cada cliente[14], a una casilla de correo electrónico.
> >
> >
> >                 Idem anterior.
> >                 Podría ser algo como "El sistema debe enviar el
> >         Pedido..."
> >
> >         >
> >         >
> >         >
> >         > DICCIONARIO:
> >         > ------------
> >         >
> >         >
> >         > País: nombre de país
> >         >
> >         >
> >         > Provincia: nombre de provincia, país
> >         >
> >         >
> >         > Localidad: nombre de localidad, país, provincia, código
> >         postal
> >         >
> >         >
> >         > Distribuidor: razón Social, país, provincia, localidad,
> >         dirección,
> >         > dirección de email, página web, teléfono
> >         > (Se considera distribuidores a sellos discográficos y
> >         comerciantes,
> >         > que son gestionados por el sistema UNICAMENTE a través de un
> >         usuario
> >         > administrador)
> >         >
> >         >
> >         > Tipo de documento: país, DNI/CI/LE/LC
> >         >
> >         >
> >         > Tipo de envío: país, provincia, localidad, correo
> >         argentino/correo
> >         > privado/encomienda por ómnibus, precio de envío
> >         >
> >         >
> >         > Cliente: nombre de cliente, tipo de cliente, tipo de
> >         documento, número
> >         > de documento, país, provincia, localidad, dirección.
> >         > (Se considera cliente a cualquier individuo que accede al
> >         sistema para
> >         > registrarse en el mismo)
> >         >
> >         >
> >         > Tipo de cliente: particular/distribuidor
> >         >
> >         >
> >         > Tipo de moneda: nombre de moneda, país
> >         >
> >         >
> >         > Producto: nombre de producto, código de indentificación,
> >         distribuidor,
> >         > formato de producto
> >         >
> >         >
> >         > Lista de precios de productos: producto, tipo de moneda,
> >         precio de
> >         > producto, tipo de cliente
> >         >
> >         >
> >         > Formato de producto: nombre de formato, CD/TAPE/VINYL
> >
> >
> >
> >                 Muy buenas las mejoras en el diccionario.
> >
> >                 Perdoname que no termine de estender esto de que hay
> >         "distribuidores" y
> >         "clientes de tipo distribuidores"... sería bueno si a alguno
> >         de los dos
> >         se le pudiera cambiar el nombre.
> >
> >         Distribuidores: proveedores, sellos discográficos, mayorista,
> >         etc.
> >
> >         Clientes de tipo distribuidores: revendedores,
> >         redistribuidores,
> >         mayorista, etc.
> >
> >                 Saludos!
> >
> >         --
> >         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
> >
> >
> >
> >
> >
> > --
> > Ing. Maximiliano Andrés Lizondo
> >       * Teléfonos: 0223-493-5488 (particular) - 2236-321708 (móvil)
> >       * Perfil profesional en
> >         LinkedIn: http://ar.linkedin.com/pub/maximiliano-andr%C3%
> >         A9s-lizondo/61/906/344
> > _______________________________________________
> > 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
>
> --
> 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
>



-- 
*Ing. Maximiliano Andrés Lizondo*

   - *Teléfonos: **0223-493-5488* (particular) - *2236-321708* (móvil)
   - *Perfil profesional en LinkedIn: *
   http://ar.linkedin.com/pub/maximiliano-andr%C3%A9s-lizondo/61/906/344
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://www3.fi.mdp.edu.ar/pipermail/php-avanzado/attachments/20131118/2ae70348/attachment-0001.html>


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