La tienda de animales1 es una tienda electrónica en línea. Como la mayoría de las tiendas electrónicas se puede consultar el catálogo de productos a la vez que hacer búsquedas en él, elegir los productos a añadir a la cesta de la compra, corregir los productos y las cantidades de los mismos de dicha cesta y establecer el pedido en firme correspondiente a los productos de la cesta. Muchas de estas acciones se pueden hacer sin registrarse en la aplicación. Sin embargo, antes de establecer un pedido es necesario tener una cuenta para identificarse frente a la aplicación. Dicha cuenta se crea cuando te registras en el sistema.
En este documento se presenta el modelo de casos de uso y el del dominio de la tienda de animales, además se añade la descripción detallada de cada uno de los casos de uso, comenzando en la fase de análisis de requisitos, descripción del flujo de eventos, diagrama de colaboración y diagrama de secuencia.
Puesto que el sistema se va a desarrollar con su interfaz en inglés, se enumeran los distintos casos de uso en el propio idioma y luego se establece, para cada uno de ellos, una descripción en castellano.
En la figura 1 se observa que se cuenta con un único tipo de usuario que es el cliente. El cliente va a tener la posibilidad de realizar una serie de tareas con el sistema, a saber: Solicitar ayuda (Help), Identificarse frente al sistema o registrarse en el caso de que aún no lo estuviera (Sign In), despedirse del mismo (Sign Out), consultar los datos del registro en el sistema de ese usuario (My account), consultar los animales por categorías (Animals by Category), consultar los animales mediante una búsqueda (Search), consultar las distintas variedades de un animal dado (See Animal) y conocer los detalles de una variedad concreta (Product Details). Una vez seleccionado un animal se puede añadir a la cesta de la compra (Add to cart) y consultar el estado de la misma (shopping Cart), eliminar animales (remove item) y modificar el número de animales que se desea adquirir (update quantity). Finalmente, el usuario puede realizar el pedido correspondiente a los animales que hay en el carrito (order items).
En los siguientes apartados se describe con más detalle la interfaz de usuario y cada uno de los casos de uso descritos anteriormente.
La interfaz constará de un menú general que de acceso en todo momento a cada uno de los casos de uso del sistema a los que se puedan acceder según el estado de interacción con el sistema. Se han identificado dos estados de interacción: aquel en el que el usuario se ha identificado frente al sistema y aquel en que no. La interfaz indicará solo las posibilidades admisibles según el estado en el que el usuario se encuentre (figura 2). Existirá una pantalla correspondiente al menú principal que es la que se mostrará al comienzo de interacción con el sistema y en algunos otros casos. En los gráficos de la interfaz identificaremos dicha pantalla con el número 0.
figura 1. Modelo de casos de uso de la tienda de animales
figura 2. Interfaz de usuario de la tienda de animales
La representación gráfica de la página principal, donde aparece toda la funcionalidad y se presentan las distintas posibilidades para trabajar con el sistema se muestra en la figura 3.
figura 3. Página principal de la tienda de animales
Las demás páginas se muestran dentro del flujo de eventos de cada una de los casos de uso.
Este caso de uso permite al cliente identificarse frente al sistema. La identificación permite que se ofrezcan algunos elementos personalizados en la pantalla, como el idioma en que se ofrece la interfaz (no lo consideraremos en nuestro caso) o los datos de facturación y envío de los pedidos que se hagan. De esta manera el cliente solo tiene que recordar un identificador de usuario y una contraseña en lugar de tener que introducir todos los datos indicados anteriormente.
Create New Account (caso de uso 10).
El cliente pulsa en “SIGN IN” en el menú de cualquier pantalla que se esté mostrando (por ejemplo, la de la figura 3). A continuación se le da la posibilidad de elegir entre mostrar el identificador de usuario y la contraseña asociada y pulsar el botón “submit” (figura 4) o solicitar una nueva identificación de usuario (normalmente para el caso en el que el usuario no tenga identificador, caso de uso 10) pulsando el boton “Register now”.
figura 4. Página de identificación de usuarios
En el caso de una correcta identificación se notificará al usuario la bienvenida al sistema y se le dejará acceso a la página principal mediante un enlace tal y como aparece en la figura 5. También se dejarán opciones disponibles solo para usuarios identificados previamente como la posibilidad de despedirse o “Sign Out” (caso de uso 2) o de ver los datos asociados a su cuenta mediante la opción “My Account” (caso de uso 3).
figura 5. Página de resultado de la correcta identificación del cliente
En caso de que el identificador de usuario no exista o la contraseña no se corresponda con la del identificador, se mostrará de nuevo la pantalla de identificación añadiendo un mensaje de error invitando al usuario a corregir el dato erróneo proporcionado, tal y como se muestra en la figura 6.
figura 6. Error de autentificación del usuario
Diagrama de colaboración
Diagrama de secuencia
Mediante este caso de uso el cliente da por concluida la visita a la tienda de animales. El sistema deja de entender que está trabajando con ese cliente hasta que se vuelva a identificar de nuevo. Cualquier personalización que hubiera para ese cliente deja de aparecer, así mismo tampoco aparecerá en la interfaz aquellas opciones que solo están disponibles para los usuarios identificados.
Para que se pueda llevar a cabo este caso de uso, el usuario tiene que haberse identificado previamente (caso de uso 1).
En cualquier momento el cliente identificado presiona el botón “SIGN OUT”. El sistema, a partir de ese momento, “olvida” de que cliente se trata y elimina del menú cualquier opción que necesite de una identificación previa. Además el sistema presenta la página principal disponible para otro tipo de usuario.
Este caso de uso permite a un cliente consultar los datos asociados a su cuenta y realizar cambios en los mismos. Se puede consultar y modificar la dirección de correo, los datos de la dirección y las preferencias con el sistema.
Para que se pueda llevar a cabo este caso de uso, el usuario tiene que haberse identificado previamente (caso de uso 1).
El usuario pulsa la opción “MY ACCOUNT” del menú de opciones. A continuación el sistema muestra una serie de datos de la cuenta agrupados en tres grupos: datos de la cuenta, datos de la dirección y datos de preferencias con el sistema.
Los datos son editables (ver figura 8), dejando la posibilidad de que el usuario los modifique según sus necesidades.
Una vez que se han modificado los datos, para que queden registrados en el sistema es necesario pulsar el botón “submit”. Eso dará lugar a una pantalla de confirmación de la operación realizada como la de la figura 7. En dicha pantalla se dará acceso directamente a la pantalla principal para iniciar el recorrido a través del enlace “Store Main Page”.
figura 7. Mensaje de confirmación de una modificación de los datos de una cuenta
figura 8. Datos que se muestran en el caso de uso “My Account”
Este caso de uso permite consultar los ítems que hay en la cesta de la compra en un momento dado. Es posible también, una vez consultada, modificar la cantidad de ítems que se desea (caso de uso 12, update quantity), eliminar alguno de la cesta (caso de uso 13, remove item) o hacer el pedido en firme (caso de uso 14, order items).
Add To Cart (caso de uso 11).
Update Quantity (caso de uso 12).
Remove Item (caso de uso 13).
Order Items (caso de uso 14).
Product Details (caso de uso 16).
El sistema muestra las mascotas que hay en la cesta de la compra una por línea (ver figura 9). Para cada uno de los ítems se muestra su identificador, su nombre, si está o no disponible actualmente en el almacén (a partir de los datos de inventario), el precio de venta al público, la cantidad de ítems que se desean y el coste total de ese ítem (precio por número de unidades).
figura 9. Estado de la cesta de la compra
Tras todas las líneas de artículos que se muestran aparecerá el total de euros del pedido.
El sistema debe dejar la posibilidad de eliminar un ítem de la cesta (caso de uso 13), consultar los detalles de una variedad de animal concreta (caso de uso 16) modificar la cantidad de ítems en la cesta (caso de uso 12), o realizar el pedido en firme (caso de uso 14).
En el caso especial en el que el pedido tenga muchas líneas (más de 4), éstas se agruparán de cuatro en cuatro, dejando al cliente la posibilidad de navegar entre estos grupos mediante los botones “more” para ver la siguiente página y “previous” para ver la anterior. La primera página no tendrá botón previous (ver figura 10), la última no tendrá “more” (figura 11) y las demás tendrán ambos botones (figura 12). En cualquier caso, cada página tendrá una quinta línea con el total del pedido completo (contanto los artículos que aparecen en la pantalla y los que no aparecen). Obviamente, si el pedido tiene cuatro o menos ítems, entonces estos botones no aparecerán (figura 9).
figura 10. Cesta de la compra de un pedido de más de 4 artículos
figura 11. Cesta de la compra cuando un pedido tiene más de 8 artículos (segunda página)
figura 12. Ultima página del pedido cuando el pedido ocupa más de una página.
En este caso de uso se pueden consultar los animales que forman parte de una categoría. En esta lista no se muestran variedades, que se presentan en el caso de uso 15 (See Animal). Tan solo se presenta el código de identificación del animal y su nombre.
See Animal (caso de uso 15).
El cliente pulsa en la página principal una de las categorías que se muestran bien en el menú de la parte izquierda o en el de la parte superior. El sistema muestra una lista de los animales dentro de esa categoría, identificador del animal y nombre.
La lista de resultados debe dejar la posibilidad de ver las variedades de cada uno de esos animales (caso de uso 15).
Este caso de uso permite localizar en la base de datos de la tienda animales que tengan entre su nombre y/o descripción una cadena de caracteres determinada. En la lista se muestra el identificador del animal, el nombre del animal (bulldog, chihuahua...) una imagen si es que hay disponible y la descripción del mismo.
See Animal (caso de uso 15).
Este caso de uso muestra una página de ayuda donde se explican cada una de las posibilidades que permite la interfaz de usuario con la tienda de animales.
Este caso de uso solicita al usuario los datos necesarios para crear un nuevo identificador de usuario y cuando se proporcionan todos ellos, se crea dicho usuario.
Sign In (caso de uso 10).
Si el cliente aún no tiene identificador de usuario, pulsará el botón “Register Now” de la figura 4 y tendrá que rellenar un formulario con sus datos, incluyendo el identificador de usuario y la contraseña que quiere utilizar. La pantalla correspondiente se puede observar en la figura 13.
figura 13. Formulario de recogida de datos para un cliente no registrado
Entre los datos que se solicitan están el identificador de usuario y contraseña deseados y una dirección de correo electrónico a donde se enviarán todas las notificaciones. La dirección postal y un teléfono de contacto y una lista de preferencias del usuario como el idioma en el que quiere que aparezca la interfaz, la categoría de animales favorita, la posibilidad de ofrecer ciertas características especiales (que no implementaremos, de momento).
En este formulario se incluirán mensajes de error siempre que no se rellene alguno de los campos correspondientes tal y como aparece en la figura 14. Los mensajes deben estar personalizados para cada uno de los campos y aparecer antes de que se procese la petición por parte del sistema. Es decir, el sistema solo procesará peticiones de creación de cuentas debidamente rellenadas por el solicitante.
figura 14. Mensajes de error asociados al formulario de recogida de datos de clientes no registrados
Una vez introducidos todos los datos necesarios se comprueba que el identificador de usuario no esté siendo utilizado en la actualidad (en caso contrario se indica mediante un mensaje de error, tal y como aparece en la pantalla de la figura 15. Si la creación de la cuenta no ha tenido problemas, entonces la pantalla debe ofrecer un mensaje de confirmación de que la tarea ha sido realizada con éxito, como el de la figura 16.
figura 15. Ventana de error en la creación de cuenta
figura 16. Ventana de confirmación de creación de cuenta
Este caso de uso añade un nuevo ítem a la cesta de la compra. Como resultado, se muestra el estado de la cesta tras la adición registrada (caso de uso 4, shopping cart).
Uses Shopping Cart (caso de uso 4).
En este caso de uso se modifica la cantidad de elementos de cada ítem de la cesta de la compra por las que aparecen en pantalla.
Para realizar esta operación es necesario estar visualizando en pantalla los ítems de la cesta de la compra y las cantidades asociadas a cada ítem (caso de uso 4, shopping cart).
Shopping Cart (caso de uso 4).
En este caso de uso se elimina un ítem de la cesta de la compra. El usuario podrá posteriormente volver a incluirlo.
Para realizar esta operación es necesario estar visualizando en pantalla los ítems de la cesta de la compra y las cantidades asociadas a cada ítem (caso de uso 4, shopping cart).
Shopping Cart (caso de uso 4).
El usuario decide realizar en firme un pedido con los ítems que hay en la cesta de la compra y con las cantidades que se muestran en la pantalla de la cesta de la compra.
Para realizar esta operación es necesario estar visualizando en pantalla los ítems de la cesta de la compra y las cantidades asociadas a cada ítem (caso de uso 4, shopping cart).
Shopping Cart (caso de uso 4).
En este caso de uso se muestran los distintos tipos de animales dentro de un animal concreto. Por ejemplo, cuando se selecciona un bulldog, las posibilidades son elegir macho o hembra, cachorro. Solo se muestran los elementos disponibles.
Para realizar esta operación es necesario estar visualizando en pantalla los animales, bien provenientes de una búsqueda por categoría (caso de uso 5) o como resultado de una búsqueda (caso de uso 7).
Animals By Category (caso de uso 5).
Search (caso de uso 7).
Muestra los detalles de una cierta variedad de animal. Si hay foto se muestra junto con la descripción del animal, la descripción y el número de unidades disponibles en stock.
See Animal (caso de uso 15).
Add To Cart (caso de uso 11).
Shopping Cart (caso de uso 4).
En la figura 17 se pueden ver las clases pensadas para el sistema de la tienda de animales. En ella se pueden distinguir cuatro bloques de datos: los correspondientes a usuarios, las correspondientes a los animales que se venden, los correspondientes a los pedidos y los correspondientes al inventario. En los siguientes apartados se comenta cada uno de ellos con más detalle.
Los datos de clientes que queremos almacenar se representan en las clases de la figura 17 de nombre Account y BannerData. Se pueden clasificar en varias categorías. Por un lado, los datos de seguridad e identificación, que básicamente son el identificador de usuario (username) y su contraseña (password).
También están los datos personales del cliente que se refieren a su nombre (firsname) y apellidos (lastname), estatus (status), dirección postal (addr1 y addr2), ciudad (city), estado de los estados unidos (state), código postal (zip), país (country) y número de teléfono (phone). Todos ellos se almacenan en la clase Account.
figura 17. Modelo del dominio de la tienda de animales (conceptual)
Para acabar, se almacenan datos sobre las preferencias del usuario en el perfil del usuario en la clase Profile. En ella encontraremos la preferencia de lenguaje que desea el cliente (langpref), y su categoría de animales favorita (favcategory), así como si desea una lista propia de recomendaciones (mylistopt) o un banner de recomendaciones (banneropt) tal y como se presentan en el formulario de registro.
Además se presentan los datos de un banner preparado para la categoría a través de la clase BannerData.
Los animales se agrupan en categorías, de las cuales almacenamos únicamente el nombre de la categoría (name) y su descripción (descn). Todos estos datos se almacenan en la clase Category (Error: Reference source not found).
Dentro de una categoría hay varios animales, que se presentan dentro de la clase Product. De los cuales almacenamos también un nombre y su descripción.
Cada animal que se vende tiene ciertas características que le son propias, por ejemplo, un perro puede se cachorro o no, o ser macho en lugar de hembra, etc. Esas peculiaridades están descritas dentro de la clase Item. En ella guardaremos la información de el tipo de animal al que pertenece.
Finalmente, cada variedad de animal tiene un suministrador, representado por la clase Supplier, del cual se guarda información de su nombre (name), estatus (status), su dirección (addr1, addr2, city, state, zip) y su teléfono (phone).
La clase Orders se utiliza para representar los pedidos. La información de un pedido incluye su número (orderid)
figura 18. modelo del dominio para la tienda de animales
Dentro de
Microsoft .NET PetShop Blueprint Application
Signing
Up
Signing
In
Working
with the Product Catalog
Browsing
the Catalog
Searching
the Catalog
Working
with the Shopping Cart
Adding
and Removing Items
Updating
the Quantity of an Item
Ordering
Items
Reviewing
an Order
Known
Issues
Para registrarse, haga clic con el ratón en el enlace con la etiqueta “Sign-in” y después pulsar el botón “Register Now”. Entre otros datos la página de registro le solicita que introduzca un identificador de usuario y una contraseña. Esta información se utiliza para identificar su cuenta y es la que se debe aportar cuando uno se identifica.
Para identificarse frente a la aplicación se debe hacer clic en el enlace con la etiqueta “Sign-in”. Es necesario aportar el identificador de usuario y la contraseña y pulsar el botón “submit”.
You will also be redirected to the signin page when you try to place an order and you have not signed in. Once you have signed in, you can return to your shopping session by clicking the shopping cart icon on the top banner.
Working with the Product Catalog
This section describes how to browse and search the product catalog.
Browsing
the Catalog
The
pet store catalog is organized hierarchically as follows: categories,
products, items.
You list the pets in a category by clicking on the category name in the left column of the main page, or by clicking on the picture representing the category.
Once you select a category, the pet store will display a list of products within a category. Selecting a product displays a list of items and their prices. Selecting a product item displays a text and visual description of the item and the number of that item in stock.
Searching
the Catalog
You
search for products by typing the product name in search field in the
middle of the banner.
Working with the Shopping Cart
Adding
and Removing Items
You
add an item to your shopping cart by clicking the Add to Cart button
to the right of an item. This action also displays your shopping
cart.
You can remove the item by clicking the Remove button to the left of the item.
To continue shopping, you select a product category from the list in the banner.
Updating
the Quantity of an Item
You
adjust the quantity of an item by typing the quantity in the item's
Quantity field in the shopping cart and clicking the Update button.
If the quantity of items requested is greater than that in stock, the In Stock field in the shopping cart will show that the item is backordered.
Ordering
Items
You
order the items in the shopping cart by selecting the Proceed to
Checkout button. The pet store will display a read-only list of the
shopping cart contents. To proceed with the checkout, click the
Continue button.
If you have not signed in, the application will display the signin page, where you will need to provide your account name and password. Otherwise, the application will display a page requesting payment and shipping information. When you have filled in the required information, you click the Submit button, and the application will display a read-only page containing your billing and shipping address. If you need to change any information, click your browser's Back button and enter the correct information. To complete the order, you click the Continue button.
Reviewing An Order
The final screen contains your order information.
The application can be set up to send email confirmation of orders. This option can only be set when the application is deployed. See the installation instructions for further information.
Known Issues
None.
1 Esta es una de las aplicaciones que usa Sun para demostrar la capacidad de Java para crear aplicaciones. Las pantallas que se muestran son de Microsoft, y se han obtenido de una implementación de la misma aplicación con diferente tecnología.
-
Menu Principal Presentación General 1 Introducción 2 Objetivos 3
Taller de Minerales Introducción al Mundo de los
Tecnico en Comercio Exterior Introducción es un Curso de
Tags: tienda de, la tienda, tienda, introducción, animales1