Wikia

Wiki WikiCE

APEDEPE

Comentarios0
7páginas en el wiki
APEDEPE
Autores José Luis Aparicio Rodríguez
Miguel Pérez Montero
Manuel Jesús de la Calle Brihuega

Tienda dedicada a la venta de libros de forma online

Logo.png

Contenido

Cargos Editar sección

Jefe de proyecto: Manuel Jesús De la calle Brihuega

Arquitecto software:Manuel Jesús De la calle Brihuega

Analista/Programador:

  • Manuel Jesús De la calle Brihuega
  • José Luis Aparicio Rodriguez
  • Miguel Ángel Perez Montero

Diseñador de interfaz de usuario:

  • Manuel Jesús De la calle Brihuega
  • José Luis Aparicio Rodriguez

Documentador: José Luis Aparicio Rodriguez

Administrador de la Wiki: José Luis Aparicio Rodriguez

Codificador de pruebas: Miguel Ángel Perez Montero

Administrador de base de datos: Miguel Angel Perez Montero

Administrador de sistemas:

  • Manuel Jesús De la calle Brihuega
  • José Luis Aparicio Rodriguez
  • Miguel Ángel Perez Montero


Entregable 1 - Documento de análisis
Editar sección

Historias de usuario
Editar sección

Autores Editar sección

  • Añadir autor: cuando el dueño de la tienda sepa de la existencia de un nuevo autor, debe poderlo dar de alta en el sitio. Tras hacer un click, teclear los detalles del autor en un formulario y enviarlo, los datos del autor deben estar disponibles.
  • Listar autores: la interfaz de administración debe tener una página principal que funcione como lista de todos los autores
  • Ver autor: debe haber páginas que muestren los detalles de cada autor individual
  • Editar autor: cambiar los datos de un autor debe ser tan sencillo como darlo de alta
  • Eliminar autor: los autores deben poder ser eliminados del sistema


Libros Editar sección

  • Añadir libro: cuando el dueño de la tienda sepa de la existencia de un nuevo libro, debe poderlo dar de alta en el sitio.
  • Subir portada de libro: el administrador debe poder subir una imagen de la portada del libro que sea visible a los clientes de la tienda.
  • Listar libros: la interfaz de administración debe tener una página principal que funcione como lista de todos los libros
  • Ver libro: debe haber páginas que muestren los detalles de cada libro individual
  • Editar libro: cambiar los datos de un libro debe ser tan sencillo como darlo de alta
  • Eliminar libro: los libros deben poder ser eliminados del sistema

Editores Editar sección

  • Añadir editor: cuando el dueño de la tienda sepa de la existencia de un nuevo libro, debe poderlo dar de alta en el sitio.
  • Listar editor: la interfaz de administración debe tener una página principal que funcione como lista de todos los editores.
  • Ver editor: debe haber páginas que muestren los detalles de cada editor individual
  • Editar editor: cambiar los datos de un editor debe ser tan sencillo como darlo de alta
  • Eliminar editor: los editores deben poder ser eliminados del sistema


Editar sección

  • Ojear libros: el cliente debe poder echar un ojo a los libros de la tienda, navegando de libro en libro y buscándolos por su título.
  • Buscar libros: el cliente debe poder escribir algunos términos y obtener una lista de todos los libros encontrados que encajan con su búsqueda.
  • Ver detalles de libro: tras ojear los títulos o buscarlos, el cliente debe poder obtener toda la información específica disponible sobre un libro particular encontrado.
  • Últimas adquisiciones: hace falta estar al corriente sobre los libros más recientes adquiridos por la tienda. Esto debe hacerse a través de un simple vistazo al sitio. Se desea tener un canal RSS al que poder suscribirse para notificación sobre las nuevas adquisiciones.


Carrito Editar sección

  • Añadir al carrito: el cliente debe poder añadir un producto al carrito
  • Sacar del carrito: el cliente debe poder eliminar items del carrito
  • Vaciar el carrito: el cliente debe poder vaciar el carrito


Foro Editar sección

  • Ver foro: ver la lista de todos los mensajes del foro en forma de hilos de discusión
  • Enviar un mensaje al foro: el cliente debe poder enviar un mensaje al foro
  • Ver un mensaje del foro: el cliente debe poder ver un mensaje del foro
  • Responder a un mensaje del foro: el cliente debe poder responder a un mensaje del foro


Etiquetas Editar sección

  • Asignar etiquetas: el administrador debe poder asignar una serie de etquetas a un libro.
  • Editar etiquetas: el administrador debe poder añadir y eliminar etiquetas de un libro editando un campo con tal propósito.
  • Listar etiquetas: los clientes de la tienda deben poder ver las etiquetas asignadas a los libros
  • Mostrar etiqueta: Mientras un cliente contempla los detalles de un libro, debe poder pulsar en cada etiqueta para mostrarle todos los libros que comparten esa misma etiqueta.
  • Recomendar libros: Mientras el usuario está contemplando un libro, el sistema debe ser capaz de recomendar libros similares al cliente, proporcionando enlaces a libros y etiquetas relacionados con el libro actual.

Seguridad Editar sección

  • Inicio de sesión correcto: el usuario debe poder inciar sesión de forma correcta.
  • Inicio de sesión incorrecto: cuando un usuario que no ha iniciado sesión intenta acceder a una funcioalidad administrativa, el sistema debe redirigirle a la página de inicio de sesión; si el usuario y contraseña proporcionados no son correctos, debe redirigírsele al formulario de inicio de sesión junto a un mensaje de error.
  • Restaurar contraseña: con un sólo click debe poderse restaurar una contraseña olvidada, enviando una nueva al usuario por e-mail.

Facturación Editar sección

  • Facturar: una vez que el cliente ha terminado de añadir artículos al carrito de la compra, puede proceder a la página de facturación, donde teclea sus datos de contacto, la dirección de envío y la información de la tarjeta de crédito; a continuación se emite el pedido, lo que da inicio a un flujo de procesamiento de pedido que incluye cobrar al clente y enviar los artículos.
  • Ver pedidos: el administrador debe poder ver el estado de todos los pedidos, procesados y cerrados. Los pedidos procesados son los que han sido cobrados al cliente pero aún no se han enviado; los pedidos cerrados son los que ya han sido enviados al cliente.
  • Ver pedido: Antes de proceder al envío, el administrador debe poder ver los detalles de un pedido; se debe añadir una página que muestre la dirección de envío y la información de facturación junto con la información de contacto del cliente.
  • Cerrar pedido: Tras enviar el pedido, éste debe cerrarse; esto se llevará a cabo en la página de detalles del pedido, de forma que con un simple botón se pueda cambiar el estado del pedido a cerrado.

Casos de uso Editar sección

Autores Editar sección

CDU Autores.png


Descripción del caso de uso Añadir Autor
Editar sección

Descripción: Añadir un nuevo autor al sistema

Precondición: El autor no se encuentra registrado en el sistema

Postcondición: El sistema cuenta con un nuevo autor almacenado

Escenario principal:

  1. El administrador quiere registrar un nuevo autor en el sistema
  2. El administrador accede al formulario para registrar un nuevo autor
  3. El administrador rellena el formulario con el nombre y apellidos del nuevo autor
  4. El sistema almacena el nuevo autor en el sistema


Descripción del caso de uso Editar Autor Editar sección

Descripción: Editar la información de un autor

Precondición: El autor se encuentra registrado en el sistema

Postcondición: El sistema almacena los cambios en el autor

Escenario principal:

  1. El administrador quiere editar un autor
  2. El administrador accede al formulario para editar un autor
  3. El administrador cambia el nombre y/o apellidos del autor
  4. El sistema guarda los cambios realizados en el autor


Descripción del caso de uso Ver Autor Editar sección

Descripción: Muestrar la información de un autor

Precondición: El autor se encuentra registrado en el sistema

Postcondición: El sistema muestra la información del autor

Escenario principal:

  1. El administrador quiere ver la información de un autor
  2. El administrador accede a la información del autor


Descripción del caso de uso Listar Autores Editar sección

Descripción: Muestrar todos los autores

Precondición: ninguna

Postcondición: El sistema muestra todos los autores correctamente

Escenario principal:

  1. El administrador quiere ver todos los autores
  2. El administrador accede al listado de todos los autores


Descripción del caso de uso Eliminar Autor Editar sección

Descripción: Eliminar un autor

Precondición: El autor se encuentra registrado en el sistema

Postcondición: El sistema queda con un autor menos (el eliminado)

Escenario principal:

  1. El administrador quiere eliminar un autor
  2. El sistema pide la confirmación de eliminación para un autor elegido
  3. El administrador confirma la eliminación
  4. El sistema elimina el autor del sistema


Libros
Editar sección

CDU Libros.png

Descripción del caso de uso Añadir Libro Editar sección

Descripción: Añadir un nuevo libro al sistema

Precondición: El libro no se encuentra registrado en el sistema

Postcondición: El sistema cuenta con un nuevo libro almacenado

Escenario principal:

  • El administrador quiere registrar un nuevo libro en el sistema
  • El administrador accede al formulario para registrar un nuevo libro
  • El administrador rellena el formulario con el isbn , titulo, paginas y precio del nuevo libro
  • El sistema almacena el nuevo libro en el sistema


Descripción del caso de uso Editar Libro Editar sección

Descripción: Editar la información de un libro

Precondición: El libro se encuentra registrado en el sistema

Postcondición: El sistema almacena los cambios en el libro

Escenario principal:

  • El administrador quiere editar un libro
  • El administrador accede al formulario para editar un libro
  • El administrador cambia el isbn, titulo, paginas o precio del libro
  • El sistema guarda los cambios realizados en el libro


Descripción del caso de uso Subir Portada
Editar sección

Descripción: Subir portada para un libro

Precondición: El libro se encuentra registrado en el sistema

Postcondición: El sistema almacena la portada del libro en el sistema

Escenario principal:

  • El administrador quiere subir portada para un libro
  • El administrador accede al formulario para indicar la nueva portada a subir
  • El administrador acepta los cambios
  • El sistema guarda los cambios realizados sobre la portada del libro en el sistema


Descripción del caso de uso Ver Libro Editar sección

Descripción: Mostrar la información de un libro

Precondición: El librose encuentra registrado en el sistema

Postcondición: El sistema muestra la información del libro

Escenario principal:

  • El administrador quiere ver la información de un libro
  • El administrador accede a la información del libro


Descripción del caso de uso Listar Libros Editar sección

Descripción: Muestrar todos los libros

Precondición: ninguna

Postcondición: El sistema muestra todos los libroscorrectamente

Escenario principal:

  • El administrador quiere ver todos los libros
  • El administrador accede al listado de todos los libros

Descripción del caso de uso Eliminar Autor Editar sección

Descripción: Eliminar un libro

Precondición: El librose encuentra registrado en el sistema

Postcondición: El sistema queda con un libro menos (el eliminado)

Escenario principal:

  • El administrador quiere eliminar un libro
  • El sistema pide la confirmación de eliminación para un libro elegido
  • El administrador confirma la eliminación
  • El sistema elimina el libro del sistema

Editores
Editar sección


CDU Editores.png


Descripción del caso de uso Añadir Editor Editar sección

Descripción: Añadir un nuevo autor al sistema

Precondición: El editor no se encuentra registrado en el sistema

Postcondición: El sistema cuenta con un nuevo editor registrado

Escenario principal:

  • El administrador quiere registrar un nuevo editor en el sistema
  • El administrador accede al formulario para registrar un nuevo editor
  • El administrador rellena el formulario con el nombre del nuevo editor
  • El sistema almacena el nuevo editoren el sistema

Descripción del caso de uso Editar Editor Editar sección

Descripción: Editar la información de un editor

Precondición: El editorse encuentra registrado en el sistema

Postcondición: El sistema almacena los cambios en el editor

Escenario principal:

  • El administrador quiere editar un editor
  • El administrador accede al formulario para editar un editor
  • El administrador cambia el nombre del editor
  • El sistema guarda los cambios realizados en el editor

Descripción del caso de uso Ver Editor Editar sección

Descripción: Muestrar la información de un editor

Precondición: El editorse encuentra registrado en el sistema

Postcondición: El sistema muestra la información del editor

Escenario principal:

  • El administrador quiere ver la información de un editor
  • El administrador accede a la información del editor

Descripción del caso de uso Listar Autores Editar sección

Descripción: Muestrar todos los editores

Precondición: ninguna

Postcondición: El sistema muestra todos los editores correctamente

Escenario principal:

  • El administrador quiere ver todos los editores
  • El administrador accede al listado de todos los editores

Descripción del caso de uso Eliminar Editor Editar sección

Descripción: Eliminar un editor

Precondición: El editor se encuentra registrado en el sistema

Postcondición: El sistema queda con un editor menos (el eliminado)

Escenario principal:

  • El administrador quiere eliminar un editor
  • El sistema pide la confirmación de eliminación para un editor elegido
  • El administrador confirma la eliminación
  • El sistema elimina el editor del sistema

CatálogoEditar sección

CDU Catalogo.png

Descripción del caso de uso Ojear Libros Editar sección

Descripción: Ver todos los libros de la tienda

Precondición: ninguna

Postcondición: El sistema muestra los libros

Escenario principal:

  • El usuario quiere ver el catalogo de libros de la tienda
  • El sistema muestra todos los libros disponibles en la tienda

Descripción del caso de uso Buscar Libros Editar sección

Descripción: Buscar un libro en la tienda

Precondición: ninguna

Postcondición: El sistema muestra los libros

Escenario principal:

  • El usuario quiere buscar un libro en concreto
  • El usuario introduce el nombre del libro y pulsa buscar
  • El sistema busca el libro indicado entre los registrados y muestra su información

Descripción del caso de uso Ver detalles de libro Editar sección

Descripción: Ver detalles de un libro de la tienda

Precondición: El libro está registrado en el sistema

Postcondición: El sistema muestra la información asociada a un libro

Escenario principal:

  • El usuario quiere ver el información sobre un libro de la tienda
  • El usuario busca en el catálogo el libro deseado
  • El usuario accede a la información del libro
  • El sistema muestra toda la información disponible sobre el libro

Descripción del caso de uso Últimas adquisiciones Editar sección

Descripción: Buscar los últimos libros registrados en el sistema

Precondición: Existe al menos un libro registrado en la tienda

Postcondición: El sistema muestra los ultimos libros registrados

Escenario principal:

  • El usuario quiere ver los ultimos libros adquiridos por la tienda
  • El sistema busca los ultimos libros registrados y los muestra

Carrito de la compra Editar sección

DCUCarrito.jpeg


Descripción del caso de uso Añadir al carrito Editar sección

Descripción: Añade al carrito un nuevo libro

Precondición: ninguna

Postcondición: queda añadido el libro al carrito

Escenario principal:

  • El usuario quiere añadir un nuevo libro al carrito
  • El sistema añade el libro al carrito


Descripción del caso de uso Sacar del carrito Editar sección

'Descripción: 'saca del carrito un libro

Precondición: existen elementos en el carrito

Postcondición: el carrito queda con un elemento menos

Escenario principal:

  • El usuario quiere quitar un libro del carrito
  • El sistema quita el libro del carrito


Descripción del caso de uso Vaciar el carrito Editar sección

Descripción: el carrito queda vacio

Precondición: existen elementos en el carrito

Postcondición: el carrito queda sin elementos en el carrito

Escenario principal:

  • El usuario quiere vaciar el carrito
  • El sistema quita todos los libros del carrito

Foro Editar sección

DCUForo1.jpeg


Descripción del caso de uso Ver foro Editar sección

Descripción: Visualizar el foro

Precondición: ninguna

Postcondición: el usuario ve la lista de todos los mensajes del foro

Escenario principal:

  • El usuario quiere ver el foro
  • El sistema muestra los mensajes del foro


Descripción del caso de uso Enviar mensaje al foro Editar sección

Descripción: El usuario envia un mensaje al foro

Precondición: ninguna

Postcondición: queda añadido un nuevo mensaje al foro

Escenario principal:

  • El usuario quiere enviar un nuevo mensaje al foro
  • El sistema muestra un nuevo mensaje en el foro


Descripción del caso de uso Ver un mensaje del foro Editar sección

Descripción: El usuario observa un mensaje del foro

Precondición: existen mensajes en el foro

Postcondición: Se muestra un mensaje al usuario

Escenario principal:

  • El usuario quiere ver un mensaje del foro
  • El usuario selecciona un mensaje del foro
  • El sistema muestra el mensaje

Descripción del caso de uso Responder a un mensaje del foro Editar sección

Descripción: El usuario responde un mensaje del foro

Precondición: existen mensajes en el foro

Postcondición: Se muestra la respuesta del usuario

Escenario principal:

  • El usuario quiere responder un mensaje del foro
  • El usuario selecciona un mensaje del foro
  • El sistema muestra todos los mensajes del foro


Etiquetas Editar sección

DCUEtiquetas1.jpeg


Descripción del caso de uso Asignar etiqueta Editar sección

Descripción: asignar una nueva etiqueta

Precondición: debe existir la etiqueta

Postcondición: el administrador asigna la etiqueta a un libro

Escenario principal:

  • El usuario quiere asignar una nueva etiqueta
  • El usuario elige el libro al que quiere asignar la etiqueta
  • El sistema asigna la etiqueta al libro


Descripción del caso de uso Editar etiqueta Editar sección

Descripción: El administrador edita una etiqueta

Precondición: existe la etiqueta en el sistema

Postcondición: la etiqueta queda editada

Escenario principal:

  • El usuario quiere editar una etiqueta
  • El usuario elige la etiqueta a editar
  • El usuario introduce los datos de la etiqueta
  • El sistema guarda la etiqueta modificada

Descripción del caso de uso Listar etiquetas Editar sección

Descripción: El administrador lista todas las etiquetas del sistema

Precondición: existen etiquetas en el sistema

Postcondición: Se muestran todas las etiquetas del sistema

Escenario principal:

  • El usuario quiere listar las etiquetas
  • El sistema muestra todas las etiquetas

Descripción del caso de uso Mostrar etiqueta Editar sección

Descripción: El usuario quiere ver la información de una etiqueta

Precondición: existen etiquetas en el sistema

Postcondición: Se muestra la información de la etiqueta

Escenario principal:

  • El usuario quiere ver la información de una etiqueta
  • El usuario selecciona la etiqueta
  • El sistema muestra la información de la etiqueta


Descripción del caso de uso Recomendar libros Editar sección

Descripción: Se muestran los libros recomendados

Precondición: ninguna

Postcondición: Se muestran los libros recomendados

Escenario principal:

  • El usuario selecciona un libro del catalogo
  • El sistema muestra la información del libro junto a los libros recomendados

Seguridad Editar sección

DCUUsuario.jpeg


Descripción del caso de uso Inicio de sesión correcto Editar sección

Descripción: iniciar sesión de forma correcto en el sistema

Precondición: el usuario existe en el sistema

Postcondición: el usuario inicia sesión de forma correto

Escenario principal:

  • El usuario quiere iniciar sesión
  • El usuario escribe su nombre y contraseña
  • El sistema inicia sesión al usuario de forma correta


Descripción del caso de uso Inicio de sesión incorrecto Editar sección

Descripción: El usuario inicia sesión de forma incorrecta

Precondición: existe el usuario en el sistema

Postcondición: el inicio de sesión es de forma incorrecta

Escenario principal:

  • El usuario quiere iniciar sesión
  • El usuario escribe su nombre y contraseña
  • El sistema inicia sesión al usuario de forma incorreta

Descripción del caso de uso Restaurar contraseña Editar sección

Descripción: El usuario quiere restaurar su contraseña

Precondición: el usuario está registrado en el sistema

Postcondición: La contraseña del usario queda restaurada

Escenario principal:

  • El usuario quiere restaurar su contraseña
  • El sistema envia un email al usuario con su nueva contraseña

Facturación Editar sección

DCUFacturar.jpeg

Descripción del caso de uso Facturar Editar sección

Descripción: Realizar facturación de los pedidos

Precondición: existen productos que facturar

Postcondición: se facturan todos los pedidos realizados

Escenario principal:

  • El usuario quiere facturar sus pedidos
  • El usuario rellena el formulario con sus datos personales
  • El sistema emite el pedido


Descripción del caso de uso Ver pedidos Editar sección

Descripción: El usuario quiere ver todos los pedidos realizados

Precondición: existe al menos un pedido en el sistema

Postcondición: el sistema muestra los pedidos realizados por el usuario

Escenario principal:

  • El usuario quiere ver los pedidos realizados
  • El sistema muestra la información y estado de los pedidos

Descripción del caso de uso Ver pedido Editar sección

Descripción: El usuario quiere ver la información del pedido

Precondición: existe al menos un pedido en el sitema

Postcondición: Se muestra la información del pedido

Escenario principal:

  • El usuario quiere ver la información del pedido
  • El sistema muestra la información del pedido

Descripción del caso de uso Cerrar pedido Editar sección

Descripción: El usuario quiere cerrar el pedido

Precondición: existe al menos un pedido en el sistema

Postcondición: el pedido queda cerrado

Escenario principal:

  • El usuario quiere cerrar el pedido
  • El sistema cambia el estado del pedido a cerrado

Entregable 2 - Documento de diseño
Editar sección

Diagrama de clases Editar sección

DiagramaDeClases.png








Diagrama de sistemas Editar sección

DiagramaSistemas.png

Entregable 3 - Casos de prueba
Editar sección

Autores Editar sección

Test Unitarios Editar sección

  • test_name

Test Funcionales Editar sección

  • should get index
  • should get new
  • should create author
  • should show author
  • should get edit
  • should update author
  • should destroy author

Libros
Editar sección

Test Unitarios Editar sección

  • test_failing_create
  • test_create
  • test_has_many_and_belongs_to_mapping
  • test_has_and_belongs_to_many_authors_mapping

Test Funcionales Editar sección

  • should get index
  • should get new
  • should create book
  • should show book
  • should get edit
  • should update book
  • should destroy book

Editores
Editar sección

Test Funcionales

  • should get index
  • should get new
  • should create publisher
  • should show publisher
  • should get edit
  • should update publisher
  • should destroy publisher

Editar sección

Test Funcionales Editar sección

  • should get index
  • should get show
  • should get search
  • should get latest

Comentarios
Editar sección

Test Funcionales Editar sección

  • should get index
  • should get new
  • should get edit
  • should create comment
  • should show comment
  • should update comment
  • should destroy comment

PedidoEditar sección

Test FuncionalesEditar sección

  • should get index
  • should get show
  • should get close

EtiquetasEditar sección

Test FuncionalesEditar sección

  • should get index
  • should get new
  • should get edit
  • should create tag
  • should show tag
  • should update tag
  • should destroy tag


Sesión de usuarioEditar sección

Test FuncionalesEditar sección

  • should get index
  • should get new
  • should get edit
  • should create user_session
  • should show user_session
  • should update user_session
  • should destroy user_session


UsuariosEditar sección

Test FuncionalesEditar sección

  • should get index
  • should get new
  • should get edit
  • should create user
  • should show user
  • should update user
  • should destroy user


Entregable 4 - Persistencia de datos
Editar sección

Configuración de la base de datos
Editar sección

La configuración de nuestra base de datos se encuentra en el fichero config/database.yml, tal fichero tiene lo siguiente:

development:
  adapter: sqlite3
  host: 127.0.0.1
  encoding: utf8          
  database: db/development.sqlite3

test:
  adapter: sqlite3
  host: 127.0.0.1
  encoding: utf8          
  database: db/test.sqlite3

production:
  adapter: sqlite3
  host: 127.0.0.1
  encoding: utf8          
  database: db/production.sqlite3

Tablas creadas
Editar sección

Tabla Autores
Editar sección

 
create_table "authors", :force => true do |t|
  t.string   "first_name"
  t.string   "last_name"
  t.datetime "created_at"
  t.datetime "updated_at"
end


Tabla Editores
Editar sección

create_table "publishers", :force => true do |t|
  t.string   "name",       :null => false
  t.datetime "created_at"
  t.datetime "updated_at"
end


Tabla Libros
Editar sección

 
create_table "books", :force => true do |t|
  t.string   "title",                      :null => false
  t.integer  "publisher_id",               :null => false
  t.datetime "published_at"
  t.string   "isbn",         :limit => 13
  t.text     "blurb"
  t.integer  "page_count"
  t.float    "price"
  t.datetime "created_at"
  t.datetime "updated_at"
  t.string   "photo_file_name"
  t.string   "photo_content_type"
  t.integer  "photo_file_size"
end


Tabla Autores_Libros
Editar sección

create_table "authors_books", :id => false, :force => true do |t|
  t.integer "author_id", :null => false
  t.integer "book_id",   :null => false
end


Tabla Libros_Etiquetas
Editar sección

create_table "books_tags", :id => false, :force => true do |t|
  t.integer "tag_id",  :null => false
  t.integer "book_id", :null => false
end


Tabla Items del Carrito
Editar sección

create_table "cart_items", :force => true do |t|
  t.integer  "book_id"
  t.integer  "cart_id"
  t.float    "price"
  t.integer  "amount"
  t.datetime "created_at"
end


Tabla Carritos
Editar sección

create_table "carts", :force => true do |t|
  t.datetime "created_at"
  t.datetime "updated_at"
end


Tabla Catalogos
Editar sección

create_table "catalogs", :force => true do |t|
  t.datetime "created_at"
  t.datetime "updated_at"
end


Tabla Categorias
Editar sección

create_table "categories", :force => true do |t|
  t.string   "title"
  t.boolean  "state",      :default => true
  t.integer  "position",   :default => 0
  t.datetime "created_at"
  t.datetime "updated_at"
end


Tabla Comentarios
Editar sección

create_table "comments", :force => true do |t|
  t.text     "body"
  t.integer  "user_id"
  t.integer  "book_id",    :null => false
  t.datetime "created_at"
end


Tabla Foros
Editar sección

create_table "forums", :force => true do |t|
  t.string   "title"
  t.text     "description"
  t.boolean  "state",        :default => true
  t.integer  "topics_count", :default => 0
  t.integer  "posts_count",  :default => 0
  t.integer  "position",     :default => 0
  t.integer  "category_id"
  t.datetime "created_at"
  t.datetime "updated_at"
end


Tabla Articulos del Pedido
Editar sección

create_table "order_items", :force => true do |t|
  t.integer  "book_id"
  t.integer  "order_id"
  t.float    "price"
  t.integer  "amount"
  t.datetime "created_at"
  t.datetime "updated_at"
end


Tabla Pedidos
Editar sección

create_table "orders", :force => true do |t|
  t.string   "email"
  t.string   "phone_number"
  t.string   "ship_to_first_name"
  t.string   "ship_to_last_name"
  t.string   "ship_to_address"
  t.string   "ship_to_city"
  t.string   "ship_to_postal_code"
  t.string   "ship_to_country"
  t.string   "customer_ip"
  t.string   "status"
  t.string   "error_message"
  t.datetime "created_at"
  t.datetime "updated_at"
end


Tabla Posts
Editar sección

create_table "posts", :force => true do |t|
  t.text     "body"
  t.integer  "forum_id"
  t.integer  "topic_id"
  t.integer  "user_id"
  t.datetime "created_at"
  t.datetime "updated_at"
end


Tabla Editores
Editar sección

create_table "publishers", :force => true do |t|
  t.string   "name",       :null => false
  t.datetime "created_at"
  t.datetime "updated_at"
end


Tabla Editores
Editar sección

create_table "taggings", :force => true do |t|
  t.integer  "tag_id"
  t.integer  "taggable_id"
  t.string   "taggable_type"
  t.integer  "tagger_id"
  t.string   "tagger_type"
  t.string   "context",       :limit => 128
  t.datetime "created_at"
end


Tabla Etiquetas
Editar sección

create_table "tags", :force => true do |t|
  t.string "name"
end


Tabla Temas
Editar sección

create_table "topics", :force => true do |t|
  t.string   "title"
  t.integer  "hits",        :default => 0
  t.boolean  "sticky",      :default => false
  t.boolean  "locked",      :default => false
  t.integer  "posts_count"
  t.integer  "forum_id"
  t.integer  "user_id"
  t.datetime "created_at"
  t.datetime "updated_at"
end


Tabla Sesión del usuario
Editar sección

create_table "user_sessions", :force => true do |t|
  t.datetime "created_at"
  t.datetime "updated_at"
end


Tabla Usuarios
Editar sección

create_table "users", :force => true do |t|
  t.string   "login",                            :null => false
  t.string   "crypted_password"
  t.string   "password_salt",                    :null => false
  t.string   "persistence_token",                :null => false
  t.datetime "created_at"
  t.datetime "updated_at"
  t.integer  "topics_count",      :default => 0
  t.integer  "posts_count",       :default => 0
end


Entregable 5 - Implementación
Editar sección

Todo el codigo fuente de nuestro proyecto puede verse en la plataforma Assembla, a traves del siguiente enlace : ApDePe

Lanzamiento de la aplicaciónEditar sección

Para obtener la aplicacion del servidor de Assembla debemos de realizar:

svn co http://subversion.assembla.com/svn/ce2012apdepe/

La versión de Ruby necesaria para la correcta instalación es la versión 1.9.2

La versión de Rails necesaria para la correcta instalación es la versión 3.1.1

Instalación de la aplicaciónEditar sección

Para instalar la aplicación debemos de lanzar el script InstalarApDePe.sh que se encuentra en el directorio: CE2012ApDePe/ApDePe/

Lanzamiento de la aplicaciónEditar sección

Para lanzar la aplicación debemos de lanzar el script LanzarApDePe.sh que se encuentra en el directorio: CE2012ApDePe/ApDePe/

Para poder ejecutar ambos script es necesario darle a los ficheros permisos de ejecucion CHMOD 777 nombre.sh

Entregable 6 - Log de desarrrollo
Editar sección

Preliminar
Editar sección

  • Instalación de Ruby on Rails en cada ordenador
  • Creación de cuenta en Assembla
  • Creación de esta wiki
  • Elección de nombre del proyecto
  • Configuración de SVN como sistema de control de versiones a utilizar por todos los miembros
  • Se reparten los roles a cada componente

Sprint 0
Editar sección

  • Realizacion del analisis correspondiente a la clase Autores a implementar
  • Creación de la tabla Autores en la base de datos
  • Implementación de autores en ruby on rails
  • Realización de pruebas unitarias y funcionales

Sprint 1
Editar sección

  • Realizacion del analisis correspondiente a la clase Libros a implementar
  • Realizacion del analisis correspondiente a la clase Editores a implementar
  • Creación de la tabla Libros en la base de datos
  • Creación de la tabla Editores en la base de datos
  • Creación de la tabla Autores_Libros
  • Implementación de libros en ruby on rails
  • Implementación de editores en ruby on rails
  • Realización de pruebas unitarias y funcionales para ambas clases implementadas

Sprint 2
Editar sección

  • Realizacion del analisis correspondiente a la interfáz Cátalogo
  • Implementación del catálogo en ruby on rails
  • Resuelto error al destruir cualquier objeto en la aplicación, añadiendo en layout <%= javascript_include_tag "application" %>
  • Realización de pruebas de integración, funcionales y unitarias
  • Implementación de busquedas en el catalogo
  • Instalación de gema sunspot_rails para las búsquedas
  • Instalación de gema sunspot_solr para las búsquedas
  • Instalación de la gema will_paginate
  • Implementación de método que nos muestra los últimos libros

Strint 3Editar sección

  • Realización del análisis correspondiente al carrito
  • Implementación del carrito y linea de carrito
  • Realización de pruebas de integración, funcionales y unitarias
  • Implementación de las funcionalidades del carrito
  • Generación de vistas y estilos correspondiente al sprint

Sprint 4Editar sección

  • Realización del análisis correspondiente al foro
  • Implementación del foro, con sus correspondientes temas, categorias y posts
  • Instalación de la gema forum_monster
  • Realización de pruebas de integración, funcionales y unitarias
  • Implementación de las funcionalidades del foro
  • Generación de vistas y estilos correspondiente al sprint

Sprint 5Editar sección

  • Realización del análisis correspondiente a las etiquetas
  • Implementación de etiquétas
  • Realización de pruebas de integración, funcionales y unitarias
  • Implementación de las funcionalidades del etiquetas
  • Generación de vistas y estilos correspondiente al sprint

Sprint 6Editar sección

  • Realización del análisis correspondiente a la seguridad
  • Implementación de usuarios y sesión de usuario
  • Realización de pruebas de integración, funcionales y unitarias
  • Implementación de las funcionalidades de usuario y sesión de usuario
  • Generación de vistas y estilos correspondiente al sprint

Sprint 7Editar sección

  • Realización del análisis correspondiente a la facturación
  • Implementación de pedidos y linea de pedido
  • Realización de pruebas de integración, funcionales y unitarias
  • Implementación de las funcionalidades de pedido y linea de pedido
  • Generación de vistas y estilos correspondiente al sprint
  • Instalación de la gema yaml_db para el despliegue e instalación de la aplicación

Últimas imágenes

Añadir imagen
65imágenes en este wiki
Ver todas las imágenes >

Actividad Reciente

Ver más >

Spotlights de otros wikis de Wikia

Wiki aleatorio