Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porFrancisco Javier Carrasco Ríos Modificado hace 8 años
1
1 Ingeniería del Software Caso de uso 07: Search Animal :Cliente :Sistema BuscarAnimal(cadena) : ListaAnimal [ SeeAnimal(productid) ]
2
2 Ingeniería del Software Contrato BuscarAnimal Name:BuscarAnimal(cadena):ListaAnimal Responsabilities Obtener los animales que contengan la cadena de búsqueda en el campo “name” o “descn” de Product Exceptions Preconditions cadena <> “” Postconditions Salida [productid, name, descn]*
3
3 Ingeniería del Software Caso de uso 15: See Animal :Cliente :Sistema VerAnimal(produtid) : ListaItem [ AddtoCart(itemid) ] [ ProductDetails(itemid) ]
4
4 Ingeniería del Software Contrato VerAnimal Name:VerAnimal(productid):ListaItem Responsabilities Obtener los distintos tipos de animales disponibles dentro de un animal concreto Exceptions productid no válido Preconditions Existe un product identificado por productid Postconditions Salida ListaItem = [item.itemid, product.name, item.listprice]*
5
5 Ingeniería del Software Caso de uso 11: AddtoCart :Cliente :Sistema AñadirAnimal(itemid, quantity) ShoppingCart()
6
6 Ingeniería del Software Contrato AñadirAnimal Name:AñadirAnimal(itemid, quantity) Responsabilities Añadir el nuevo animal en la cesta de la compra junto a su cantidad Exceptions itemid no válido Preconditions Existe un item identificado por itemid Postconditions Se creó una instancia de A de account (fantasma) Se creó una instancia de O de Order (fantasma) Se asoció A a O Se creó una instancia LI LineItem con sus valores Se asoció LI al Item y al Order Salida
7
7 Ingeniería del Software Caso de uso 04: ShoppingCart :Cliente :Sistema CarroCompra():ListaLineItem, total [ UpdateQuantity() ] [ RemoveItem() ] [ OrderItems() ] [ ProductDetails() ] *
8
8 Ingeniería del Software Contrato CarroCompra Name:CarroCompra():ListaLineItem, Total Responsabilities Obtener todos los LineItem ordenados por lineitem.linenum y el total del carro de la compra Exceptions Preconditions Postconditions Salida ListaLineItem = [lineitem.linenum, item.itemid, product.name, lineitem.status, lineitem.unitprice, lineitem.quantity, lineitem.unitprice * lineitem.quantity]* Total = suma para todos los lineitem de lineitem.unitprice * lineitem.quantity
9
9 Ingeniería del Software Caso de uso 12: UpdateQuantity :Cliente :Sistema ModificarCantidad(linenum, cantidad)
10
10 Ingeniería del Software Contrato ModificarCantidad Name:ModificarCantidad(linenum, cantidad) Responsabilities Modificar la cantidad del LineItem identificado por linenum Exceptions linenum válido cantidad > 0 Preconditions Existe un LineItem identificado por linenum Postconditions Se asignó LineItem.quantity = cantidad al LineItem identificado por linenum Salida
11
11 Ingeniería del Software Caso de uso 13: RemoveItem :Cliente :Sistema EliminarItem(linenum)
12
12 Ingeniería del Software Contrato EliminarItem Name:EliminarItem(linenum) Responsabilities Eliminar el LineItem identificado por linenum Exceptions linenum válido Preconditions Existe un LineItem identificado por linenum Postconditions Se desasoció LineItem.linenum=linenum de Item Se desasoció LineItem.linenum=linenum de Orders Se destruyó LineItem.linenum=linenum Si no habia más LineItem se destruyó Orders Salida
13
13 Ingeniería del Software Caso de uso 14: OrderItem :Cliente :Sistema [NotYetSigned] SignIn() SolicitarDatosPago(DatosPago) ConfirmarPedido() *
14
14 Ingeniería del Software Contrato ObtenerDatosPago Name:SolicitarDatosPago(DatosPago) Responsabilities Solicitar datos de la tarjeta y dirección de envio Exceptions DatosPago válidos Preconditions Usuario registrado y existen animales en el carro de la compra Postconditions Se asignó a Orders.tarjeta = DatosPago.tarjeta Se asignó a Orders.ship* = DatosPago.DireccionEnvio Salida
15
15 Ingeniería del Software Contrato ConfirmarPedido Name:ConfirmarPedido() : Responsabilities Actualizar la transacción y producir la factura Exceptions Preconditions Usuario registrado Postconditions Para cada animal del carro se decrementó el stock de items Salida Se generó la factura con los datos del usuario y envío junto con el desglose de los animales comprados
16
16 Ingeniería del Software Caso de uso 01: SignIn :Cliente :Sistema IdentificarUsuario(usuario, clave) [ CreateNewAccount() ]
17
17 Ingeniería del Software Contrato IdentificarUsuario Name:IdentificarUsuario(usuario, clave) Responsabilities Verificar la identidad del usuario Exceptions Usuario o clave no válido Preconditions Postconditions Se actualizó NotYetSigned = true si usuario no autorizado Se actualizó NotYetSigned = false si usuario autorizado Se actualizó Account con los datos del usuario identificado Salida
18
18 Ingeniería del Software Caso de uso 01: CreateNewAccount :Cliente :Sistema ActualizarCuenta()
19
19 Ingeniería del Software Contrato ActualizarCuenta Name:ActualizarCuenta(DatosUsuario) Responsabilities Actualizar los datos del usuario Exceptions DatosUsuario no válidos Preconditions Postconditions Se actualizó Account con los nuevos valores de DatosUsuario Salida
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.