Está en la página 1de 42

Profesor:

Edwin Maravi

Integrantes:
Juan Carlos Ramos T.
Magaly Luna
Carlos Rodifguez
Israel Jauregui
Jesus Ruiz S.

Proyecto : LIBRO ELECTRONICO VIRTUAL

Bloque:

ABRIL 2015

Objetivo del proyecto:


El proyecto tiene como objetivo principal evidenciar y enumerar el desarrollo de un proyecto ante
un caso de un requerimiento real , pudiendo aplicar todo los conocimiento adquiridos en clase.
Datos del proyecto :
Nombre: Libro Reclamaciones Virtual
Empresa: Dolce Peccato .
Descripcin de la empresa : Empresa dedicada al rubo de la cocina gourmet.
Situacin actual:
La Empresa DP presenta al da de hoy la solicitud de mejorar el servicio que brindan con
respecto al Libro de reclamaciones . Ya que considera que desea hacer mas rpida la generacin de
reclamos que puedan tener en su local as como tambin el poder tener acceso a estar informacin .
Por otro lado la empresa DP ha realizado las consultas del caso y ah llegado a la decisin de
implementar un libro electrnico virtual , pudiendo as hacer que sus cliente , puedan acceder de
una manera mas sofisticada y mas acorde con el ambiente del loca para presentar un reclamo.
Por lo que se pacto una reunin con el administrador de la tienda , para poder identificar las
necesidades y verificar el estado actual del servicio.
A continuacin pasaremos a realizar los pasos y las gestiones correspondientes para llevar a cabo el
desarrollo de un proyecto que pueda cumplir con las expectativas y satisfacer las necesidades de la
empresa DP

Gestin de Alcance
Requerimientos:
luego de la primera entrevista con el administrador de la tienda , pudimos obtener las siguientes
necesidades
1. Desea incorporar un sistema de gestin de reclamos en su tienda.
2. Desea poder contar con la informacin de manera rpida.
3. No desea que sea de uso exclusivo para una persona ( desea que pueda ser usado por
usuarios que sean asignados).
4. Desea que los usuarios puedan acceder de una manera rpida y amigable.
5. Desea poder contar con reportes que lo ayuden a tener la informacin lista para ser
enviada cuando esta sea solicitadas por los entes reguladores.
observacin : en la actualidad la tienda cuenta con el libro de reclamacin que es indicado por ley .
El administrador quiere mejorar este servicio tanto para el uso de los clientes como para el control
por la parte de la administracin

Alcance:
luego de analizar los requerimientos del administrador de la tienda , pudimos definir cual seria el
alcance del proyecto.
El proyecto tendr el desarrollo de los siguientes mdulos
Modulo de acceso:
es modulo permitir a tanto usuarios como administrador acceder a la
plataforma.
Modulo de Registro :
el modulo de registro permitir generar un reclamo a los usuarios por alguna
mala prestacin del servicio dentro del local (se habra contemplado el formato
emitido por INDECOPI anexo 1).
Desde este modulo el usuario ingresa la informacin correspondiente y requerida
para realizar un solicito de reclamo de manera formal.
Tambin contara con la opcin de poder realizar el seguimiento de su reclamo y
poder ver cual es la respuesta.
adems el modulo de registro le brindara un cdigo de seguimiento para que el
usuario pueda realizar el seguimiento de su reclamo como lo indica INDECOPI.

Modulo Administracin
el modulo de administracin permitir al administrador acceder a la
informacin registrada y podr evaluar la misma , mediante listado con los diferentes
tipos de filtro establecidos.
Los filtros establecidos son: filtro por fecha, filtro por estado, filtro por das,por
cdigo.
Para la representacin de mencionado anteriormente se muestra el siguiente cuadro (EDT):

Requisitos:
para la elaboracin de una solucin ante las necesidades especificadas anteriormente se detalla los
siguientes requisitos:
1 Servidor Web
Plataforma Windows (IIS)
BD Mysql

Gestin de RRHH
Para la gestin de RRHH se ha considera el equipo de desarrollo para la elaboracin del proyecto en
donde se definen los siguientes roles
1 Jefe de proyecto
1 Analista de QA
2 Analista programador
1 Programador tester
1 Trabajador del restaurant
Descripcin de los Roles:
Jefe de proyecto:
Encargado del proyecto y gestor de los procesos y cada una de las etapas del proyecto.
Requisitos:
Experiencia mnimo de 03 aos en proyectos similares.
Manejo de Moldeamiento de datos
Manejo de PMBOK para la gestin de proyectos
Costo estimado : 2800
horas de trabajo : 48hrs semanales
Analista de QA:
Encargado de verificar la Calidad de proyecto y poder garantizar que el proyecto
cumple al 100% con los requerimientos establecidos por parte del cliente.
Requisitos:
Experiencia mnima de 02 aos.
Manejo en la elaboracin de pruebas unitarias y funcionales de sotfware,
Costo estimado : 2000
horas de trabajo : 48hrs semanales
Analista programador:
Encargados del desarrollo del codigo para la plataforma .
Requisitos:
Experiencia mnima de 01 aos en desarrollo similares
Conocimientos en JAVA EE , programacin en capas
Conocimiento en BD Mysql
Conocimiento de html5 + css3 +Javascrip
Conocimiento en servidores e instalaciones
Manejo de Framework (Kendo ui Jquery Bootsptrap)
Costo estimado : 1500
horas de trabajo : 48hrs semanales

Programador tester:
Encargado de elaborar las pruebas de rendimiento de la plataforma (modulo). Capaz de
identificar comportamiento anmalos y realizar la documentacin correspondiente.
Costo estimado : 1200
horas de trabajo : 48hrs semanales
Requisitos:
Experiencia mnima de 01 aos en desarrollo similares,
Conocimientos Test de stress
Conocimiento de documentacin de resultados
Trabajador del restauran
Encargado de brindar y asesora al jefe de proyecto sobre el flujo del registro de reclamos.
Requisitos:
Experiencia mnima de 03 meses en su cargado,
conocer el flujo de registro de reclamos,

Gestin de la Comunicacin
dentro del proyecto lo mas importante es la comunicacin , por lo tanto para poder definir el tipo y
las personas a la cual debemos mantener informados , se realizo como primer paso la identificacin
de los Stakeholders.
Stakeholders
Administrador de la tienda
Gerente de la tienda
para nuestros stakeholder que influyen de manera alta en el desarrollo del proyecto , se han
programador los siguientes canales de comunicaciones
canales de comunicacin:
Reuniones Semanales
Reuniones Semanales :
Mediante las reuniones semanales El jefe de proyecto informara a los stakeholder sobre los avance
del proyecto , as como tambin de las incidencias presentadas y/o se debatirn sobre algunos
posibles cambios por parte de los stakeholder,

para realizar una comunicacin dentro del grupo del proyecto se han definido los siguientes canales:
canales de comunicacin:
Via Email
Reuniones Semanales
Via Emal :
Mediante los correos se comunicaran de manera masiva sobre algunos cambios o inconvenientes
que se puedan presentar en el desarrollo , para que as se puedan mitigar los inconvenientes
presentados.
Reuniones Semanales :
Mediante las reuniones semanales El jefe de proyecto informara al grupo del proyecto sobre el
avance alcanzando y sobre posibles retrasos .
Por otro lado estas reuniones servirn para recibir indicaciones de alguna mejora o cambio en el
desarrollo del proyectos

Gestin del Tiempo


para el desarrollo del proyecto se ha realizado un diagrama en donde se contemplan las tareas a
realizar y los encargados de las mismas

Elaboracin de la BD
para la elaboracin de la base de datos se contemplaron las siguientes entidades.
Tablas
User
Descripcin: se registraran los datos de los usuarios que puedan acceder a la seccin
de administraron de la aplicacin
Tienda
Descripcin : en esta tabla se guardara la informacin correspondiente a la
informacin del local en donde se realiza la operacin (Reclamo)
Tipo
Descripcin: en esta tabla se registraran los tipos de acciones que se puedan dar o
incorporar posteriormente (actualmente pueden ser de tipo Reclamo / Queja)
Bien
Descripcin: en esta tabla se registraran los tipos de servicios para presentar el
reclamo/queja (actualmente pueden ser de tipo Bien / Servicio)
Reclamo
Descripcin: en esta tabla se guardara la informacin correspondiente al reclamo
presentado por los usuarios , donde se guardaran los datos del cliente , como un
detalle de lo sucedi , y un cdigo de seguimiento.
Seguimiento
Descripcin: en esta tabla se guarda la informacin correspondiente al estado del
reclamo , como el cdigo de seguimiento , y el estado de la solicitud.
para realizar el moldeamiento de las tablas se utilizo la herramienta MySQL Workbench en su
versin 6.0
a continuacin se adjunta las imgenes con la creacin de las tablas en mencionado.

DIAGRAMA DE LA BASE DE DATOS

Tabla User

Tabla Tienda

Tabla Bien

Tabla Tipo

Tabla Reclamo

Tabla Seguimiento

Procedimientos almacenados
se procedieron a crear los procedimientos almacenados necesarios parar aplicar un CRUD a
nuestras entidades.

Script tabla User

/* sp_ ingreso de user */

CREATE PROCEDURE sp_ingreso_user(in parUser VARCHAR(45),in parPass VARCHAR(45))


insert into user (user,pass) values(parUser,parPass);

set @p01 = 'admin';


set @p02 = '123/*-';
call sp_ingreso_user(@p01,@p02);

/* SP eliminar user */

CREATE PROCEDURE sp_eliminar_user(in parId int)


DELETE FROM user WHERE id_user=parId;

set @p01 = '1';


call sp_eliminar_user(@p01);

/** SP update USER **/

CREATE PROCEDURE sp_update_user(in parId int , in parUser VARCHAR(45), in parPass VARCHAR(45))


UPDATE user SET user=parUser , pass=parPass WHERE id_user=parId;

/** cambio de informacion **/

set @id = '2';


set @p01 = 'cambio';
set @p02 = '2222';
call sp_update_user(@id,@p01,@p02);

/** restauracion de informacion **/


set @id = '2';
set @p01 = 'admin';
set @p02 = '123/*-';
call sp_update_user(@id,@p01,@p02);

/** listar user **/


CREATE PROCEDURE sp_listar_user()
select * from user;

call sp_listar_user();

/** buscar user **/

CREATE PROCEDURE sp_buscar_user(in parId int)


select * from user where id_user=parId;

set @p01 = '2';


call sp_buscar_user(@p01);

Script tabla Tienda

/**** TABLA TIENDA *****/

SELECT * FROM lre_db.tienda;

/* sp_ ingreso de tienda */

CREATE PROCEDURE sp_ingreso_tienda(in parRuc VARCHAR(11),in parRazonSocial VARCHAR(255),in parDireccion


VARCHAR(255),in parTelefono VARCHAR(10),in parEncargado VARCHAR(60))
insert into tienda (ruc,razon_social,direccion,telefono,encargado)
values(parRuc,parRazonSocial,parDireccion,parTelefono,parEncargado);

set @p01 = '14545671951';


set @p02 = 'Razon Social 1';
set @p03 = 'Direccion';
set @p04 = '2660910';
set @p05 = 'Juan Perez';

call sp_ingreso_tienda(@p01,@p02,@p03,@p04,@p05);

/* SP eliminar tienda */

CREATE PROCEDURE sp_eliminar_tienda(in parId int)


DELETE FROM tienda WHERE id_tienda=parId;

set @p01 = '2';


call sp_eliminar_tienda(@p01);

/** SP update tienda **/

CREATE PROCEDURE sp_update_tienda(in parId int ,in parRuc VARCHAR(11),in parRazonSocial VARCHAR(255),in
parDireccion VARCHAR(255),in parTelefono VARCHAR(10),in parEncargado VARCHAR(60))

UPDATE tienda SET ruc=parRuc ,razon_social=parRazonSocial , direccion=parDireccion , telefono=parTelefono


,encargado=parEncargado WHERE id_tienda=parId;

set @id = '3';


set @p01 = '0000';
set @p02 = '000000';
set @p03 = '0000';
set @p04 = '00000';
set @p05 = '0000000';

call sp_update_tienda(@id,@p01,@p02,@p03,@p04,@p05);

/** listar tienda **/


CREATE PROCEDURE sp_listar_tienda()
select * from tienda;

call sp_listar_tienda();

/** buscar tienda **/

CREATE PROCEDURE sp_buscar_tienda(in parId int)


select * from tienda where id_tienda=parId;

set @p01 = '3';


call sp_buscar_tienda(@p01);

Script Bien

/* sp_ ingreso de Bien */

CREATE PROCEDURE sp_ingreso_bien(in parDescripcion VARCHAR(45))


insert into bien (descripcion) values(parDescripcion);

set @p01 = 'Producto';


set @p02 = 'Servicio';
call sp_ingreso_bien(@p01);
call sp_ingreso_bien(@p02);

/* SP eliminar bien */

CREATE PROCEDURE sp_eliminar_bien(in parId int)


DELETE FROM bien WHERE id_bien=parId;

set @p01 = '6';


call sp_eliminar_bien(@p01);

/** SP update Bien **/


CREATE PROCEDURE sp_update_bien(in parId int , in parDescripcion VARCHAR(45))
UPDATE bien SET descripcion=parDescripcion WHERE id_bien=parId;

/** cambio de informacion **/


set @p01 = '7';
set @p02 = 'cambio';
call sp_update_bien(@p01,@p02);

/** restauracion de informacion **/


set @p01 = '7';
set @p02 = 'Producto';
call sp_update_bien(@p01,@p02);

/** listar bien **/


CREATE PROCEDURE sp_listar_bien()
select * from bien;

call sp_listar_bien();

/** buscar bien **/

CREATE PROCEDURE sp_buscar_bien(in parId int)


select * from bien where id_bien=parId;

set @p01 = '7';


call sp_buscar_bien(@p01);

Script tipo

/**** TABLA TIPO *****/

/* sp_ ingreso de tipo */

CREATE PROCEDURE sp_ingreso_tipo(in parDescripcion VARCHAR(45))


insert into tipo (descripcion) values(parDescripcion);

set @p01 = 'Reclamo';

set @p02 = 'Queja';


call sp_ingreso_tipo(@p01);
call sp_ingreso_tipo(@p02);

/* SP eliminar tipo */

CREATE PROCEDURE sp_eliminar_tipo(in parId int)


DELETE FROM tipo WHERE id_tipo=parId;

set @p01 = '1';


call sp_eliminar_tipo(@p01);

/** SP update tipo **/

CREATE PROCEDURE sp_update_tipo(in parId int , in parDescripcion VARCHAR(45))


UPDATE tipo SET descripcion=parDescripcion WHERE id_tipo=parId;

/** cambio de informacion **/


set @p01 = '2';
set @p02 = 'cambio';
call sp_update_tipo(@p01,@p02);

/** restauracion de informacion **/


set @p01 = '2';
set @p02 = 'Queja';
call sp_update_tipo(@p01,@p02);

/** listar tipo **/


CREATE PROCEDURE sp_listar_tipo()
select * from tipo;

call sp_listar_tipo();

/** buscar tipo **/

CREATE PROCEDURE sp_buscar_tipo(in parId int)


select * from tipo where id_tipo=parId;

set @p01 = '2';


call sp_buscar_tipo(@p01);

Script Reclamo
SELECT * FROM lre_db.reclamo;

/**** TABLA RECLAMO *****/

SELECT * FROM lre_db.reclamo;

/* sp_ ingreso de Reclamo */


drop PROCEDURE sp_ingreso_reclamo;

CREATE PROCEDURE sp_ingreso_reclamo(


in parNroReclamo VARCHAR(45),
in parIdTienda INT,
in parFechaRegistro date,
in parNombres VARCHAR(60),
in parApellidos VARCHAR(60),
in parDni VARCHAR(10),

in parTelefono VARCHAR(10),
in parEmail VARCHAR(10),
in parTutor VARCHAR(45),
in parIdBien INT,
in parDesReclamo VARCHAR(600),
in parIdTipo INT,
in parEstado INT,
in parAccionProveedor VARCHAR(600)

)
insert into reclamo (
nro_reclamo ,
id_tienda,
fecha_registro,
nombres,
apellidos,
dni,
telefono,
email,
tutor,
id_bien,
descripcion_reclamo,
id_tipo,
estado,
accion_proveedor
)
values(
parNroReclamo ,
parIdTienda,
parFechaRegistro ,
parNombres ,
parApellidos ,
parDni ,
parTelefono ,

parEmail ,
parTutor ,
parIdBien ,
parDesReclamo ,
parIdTipo ,
parEstado ,
parAccionProveedor

);

set @p01 = '1';


set @p02 = '1';
set @p03 = '2015-03-01';
set @p04 = 'Juan Carlos';
set @p05 = 'Ramos T.';
set @p06 = '45160470';
set @p07 = '2660910';
set @p08 = 'correo';
set @p09 = 'no aplica';
set @p10 = '7';
set @p11 = 'Descripcion de reclamo';
set @p12 = '2';
set @p13 = '1';
set @p14 = 'pendiente';

call sp_ingreso_reclamo(@p01,@p02,@p03,@p04,@p05,@p06,@p07,@p08,@p09,@p10,@p11,@p12,@p13,@p14);

/* SP eliminar reclamo */

CREATE PROCEDURE sp_eliminar_reclamo(in parId int)


DELETE FROM reclamo WHERE id_reclamo=parId;

set @p01 = '2';


call sp_eliminar_reclamo(@p01);

/** SP update reclamo **/


drop PROCEDURE sp_update_reclamo;

CREATE PROCEDURE sp_update_reclamo(

in parIdReclamo INT,
in parNroReclamo VARCHAR(45),
in parIdTienda INT,
in parFechaRegistro date,
in parNombres VARCHAR(60),
in parApellidos VARCHAR(60),
in parDni VARCHAR(10),
in parTelefono VARCHAR(10),
in parEmail VARCHAR(10),
in parTutor VARCHAR(45),
in parIdBien INT,
in parDesReclamo VARCHAR(600),
in parIdTipo INT,
in parEstado INT,
in parAccionProveedor VARCHAR(600)

UPDATE reclamo SET


nro_reclamo=parNroReclamo ,
id_tienda=parIdTienda,
fecha_registro=parFechaRegistro,
nombres=parNombres,
apellidos=parApellidos,
dni=parDni,

telefono=parDni,
email=parEmail,
tutor=parTutor,
id_bien=parIdBien,
descripcion_reclamo=parDesReclamo,
id_tipo=parIdTipo,
estado=parEstado,
accion_proveedor=parAccionProveedor

WHERE id_reclamo=parIdReclamo;

/** cambio de informacion **/


set @p01 = '3';
set @p02 = '3';
set @p03 = '1';
set @p04 = '2015-03-01';
set @p05 = 'Jua000n Carlos';
set @p06 = 'Ramos 00T.';
set @p07 = '4510070';
set @p08 = '2600010';
set @p09 = 'cor00o';
set @p10 = 'no 00lica';
set @p11 = '7';
set @p12 = 'Descripcion de reclamo';
set @p13 = '2';
set @p14 = '1';
set @p15 = 'pendiente';

call sp_update_reclamo(@p01,@p02,@p03,@p04,@p05,@p06,@p07,@p08,@p09,@p10,@p11,@p12,@p13,@p14,@p15);

/** listar reclamo **/


CREATE PROCEDURE sp_listar_reclamo()
select * from reclamo;

call sp_listar_reclamo();

/** buscar reclamo **/

CREATE PROCEDURE sp_buscar_reclamo(in parId int)


select * from reclamo where id_reclamo=parId;

set @p01 = '3';


call sp_buscar_reclamo(@p01);

Script Seguimiento

/**** TABLA SEGUIMIENTO *****/

/* sp_ ingreso de Seguimiento */

CREATE PROCEDURE sp_ingreso_seguimiento(


in parIdReclamo INT,
in parFechaEmision date,
in parFechaCaducidad date,
in parCodigo VARCHAR(45),
in parEstado Int
)
insert into seguimiento (
id_reclamo,
fecha_emision,
fecha_caducidad,
codigo,
estado
)

values(
parIdReclamo,
parFechaEmision,
parFechaCaducidad,
parCodigo,
parEstado
);

set @p01 = '1';


set @p02 = '2015-03-03';
set @p03 = '2015-04-04';
set @p04 = '124assdef';
set @p05 = '1';

call sp_ingreso_seguimiento(@p01,@p02,@p03,@p04,@p05);

/* SP eliminar seguimiento */

CREATE PROCEDURE sp_eliminar_seguimiento(in parId int)


DELETE FROM seguimiento WHERE id_seguimiento=parId;

set @p01 = '2';


call sp_eliminar_seguimiento(@p01);

/** SP update seguimiento **/

CREATE PROCEDURE sp_update_seguimiento(


in parIdSeguimiento INT,
in parIdReclamo INT,
in parFechaEmision date,
in parFechaCaducidad date,
in parCodigo VARCHAR(45),
in parEstado Int

)
UPDATE seguimiento SET
id_reclamo=parIdReclamo,
fecha_emision=parFechaEmision,
fecha_caducidad=parFechaCaducidad,
codigo=parCodigo,
estado=parEstado

WHERE id_seguimiento=parIdSeguimiento;

set @p01 = '3';


set @p02 = '1';

set @p03 = '2015-01-01';


set @p04 = '2015-01-01';
set @p05 = '0000';
set @p06 = '0';

call sp_update_seguimiento(@p01,@p02,@p03,@p04,@p05,@p06);

/** listar seguimiento **/


CREATE PROCEDURE sp_listar_seguimiento()
select * from seguimiento;

call sp_listar_seguimiento();

/** buscar seguimiento **/

CREATE PROCEDURE sp_buscar_seguimiento(in parId int)


select * from seguimiento where id_seguimiento=parId;

set @p01 = '3';


call sp_buscar_seguimiento(@p01);

Diagrama de Casos de USO Cliente

Diagrama de Casos de USO Administrador

Estructura BASE del Proyecto

Se proceda a Identificar cada paquete del proyectos :


Paquete utilitarios

Paquete Servicios

Paquete Entidades

Paquete DAO

Paquete Controladores

Para el desarrollo de la interfaces con la cual el usuario tendr interaccionan se detalla lo siguiente:
Con el uso de JPA en la integracin y de Controladores , se posibilita el uso de archivos .xhtml
lo que permite tener una integracin con cdigo html5 a un nivel mas amplio por lo que se aplicaran
conocimientos de este desarrollo generando una interfaces que permita cumplir con los
requerimientos
para el desarrollo se trabajo por separado la estructura html para luego esta ser integrada
se adjunta pantallas de la estructura html que sera utilizada
Opciones Habilitadas para los usuarios

Incio : El Usuario puedes Escoger El tipo de Acceso

Inicio Usuario :
El Usuario Escoge entre registrar un Reclamo o Realizar el seguimiento de su reclamo

Registro Reclamo:
El usuario puede registrar su reclamo

Reclamos Registrado:
el usuario recibe un codigo de seguimiento de reclamo

Seguimiento de Reclamo:
El usuario puede saber enq ue estado se encuentra su reclamo

Opciones Disponibles para el Administrador:


Login:
El admin deber identificarse:

Opciones de Admin:
Desde aqu el administrador podr buscar los reclamos que han sido generados

Listado / Busqueda
El admin puede visualizar los reclamos generados para realizar acciones de respuesta mediante la
opcin ver

Registro Respuesta:
El Admin podra actualizar la respuesta ante el reclamo para que el cliente pueda saber la respuesta
de su reclamo

Codigos html
Para el desarrollo se ha utilizado el framework Bootstrap ,

Anexo:
Para el desarrollo del proyecto se contemplaron los campos legales , por lo que se adjunta la
informacin brindada por indecopi con respecto a la regulacin del registro de reclamos
Reglamento del Libro de Reclamaciones (Formato: PDF )

También podría gustarte