a) Propósito. .............................................................................................................................. 16
b) Convenciones del documento. .............................................................................................. 16
c) Audiencia Objetivo y Sugerencia de Lectura. ........................................................................ 16
d) Alcance del proyecto. ............................................................................................................ 16
e) Referencias. ........................................................................................................................... 17
2.1 Descripción General. ............................................................................................................... 18
2.1.1 Perspectiva del Producto. ................................................................................................ 18
2.1.2 Características del Producto. ........................................................................................... 18
2.1.3 Clases y Características del Usuario. ................................................................................ 18
2.1.4 Ambiente de Operación. .................................................................................................. 19
2.1.5 Restricciones de Diseño e Implementación. .................................................................... 19
2.1.6 Suposiciones y Dependencias. ......................................................................................... 19
2.2 Características del Sistema...................................................................................................... 19
2.2.1 Características del sistema. .............................................................................................. 19
2.2.2 Interfaces del usuario. ...................................................................................................... 19
2.2.3 Interfaz del hardware. ...................................................................................................... 19
2.2.4 Interfaz del software. ....................................................................................................... 19
2.2.5 Interfaz de comunicaciones. ............................................................................................ 19
2
2.3 Otros requerimientos del software. ........................................................................................ 20
2.3.1 Requerimientos de desempeño. ...................................................................................... 20
2.3.2 Requerimientos de seguridad. ......................................................................................... 20
2.3.3 Requerimientos de estabilidad. ....................................................................................... 20
2.3.4 Atributos de calidad de software. .................................................................................... 20
3. Diseño............................................................................................................................... 21
Glosario ......................................................................................................................................... 61
3
OBSERVACIONES.
4
1. Planificación.
1.1. Determinación del Ámbito del Proyecto.
Para el desarrollo de este proyecto se recurrirá al uso de los lenguajes de JAVA y XML
en el IDE Android Studio, se emplearán bases de datos No SQL para una gestión de datos
con mayor eficacia, implementando dicho Gestor de Base de Datos con las tecnologías PHP
y APACHE2 en un servidor Linux/Windows, administrando así todo lo anterior desde esta
parte.
Se usarán las tres especialidades de la carrera Ing. Sistemas Computacionales:
Base de Datos: Aquí es donde se realizará la administración del producto,
mediante una base de datos gestionada en MongoDB o Firebase (Sujeto a
cambio en base a las necesidades).
Redes: Se requerirá de la utilización de una Red LAN (Local Área Network)
en la cual estará alojado un sitio web, y también propiciará acceso a la Web
App’s para acceder a la información de la librería.
Desarrollo de Software: Propiciará las herramientas para realizar la correcta
gestión, en las etapas del proyecto, para así tener mayor control y poder
prever posibles problemas en el desarrollo de esto, garantizando así, un
mayor índice de éxito en el proyecto.
5
6
1.3. Análisis de los riesgos asociados al proyecto.
Riesgos.
1. Tenemos riesgos de perder la información de la base de Datos.
2. También podrían ocurrir algunos ataques de hackers que desean la información para
perjudicar a la empresa.
3. Desastres naturales que puedan afectar al equipo.
4. Caídas de los servidores.
Consecuencias.
1. La información podría llegar a manos equivocadas.
2. Podrían darle un mal uso a esa información.
3. Inestabilidad y deficiencia.
4. Inaccesibilidad para la base de datos.
Medidas de Seguridad.
1. La base de datos debe contar con seguridad, otorgando permisos de administradores
y usuarios.
2. Tener un control sobre los administradores que manipulan la base de datos.
3. Mantener a discreción la información.
4. Mantener las medidas de seguridad en el equipo de trabajo.
5. Buen proveedor de internet.
6. Conexión privada de internet.
7
1.4. Estimación del coste del proyecto.
Para la estimación de costos, estimación de tiempo y el personal necesario
usaremos el método COCOMO.
COCOMO basa su estimación en el cálculo de líneas de código de un programa fuente,
estas están dadas en kilo líneas de código (KDLC).
Los valores que necesitamos calcular son los siguientes:
Esfuerzo.
Tiempo de duración del proyecto.
Personal necesario.
La siguiente tabla muestra este valor constante para algunos lenguajes.
LENGUAJE LDC/PF
Ensamblador 320
C 150
Cobol 105
Pascal 91
Prolog/LISP 64
C++ 64
Visual Basic 32
SQL 12
Según vimos en la tabla anterior, un programa escrito en Visual Basic no supera los 50
(KLDC) esto indica que el software no es muy complejo, por lo que se califica como
orgánico.
La siguiente tabla nos muestra los coeficientes del cálculo para cada tipo de proyecto.
Proyecto software A E C D
Orgánico 3.2 1.05 2.5 0.38
Semi-acoplado 3.8 1.12 2.5 0.35
Empotrado 2.8 1.20 2.5 0.32
Primer paso:
Determinar las (KLDC) esto se realiza atreves de los siguientes cálculos:
KLDC= (PF*Líneas de código por cada PF)/1000=(261.36)/1000= 8.363 KLDC
Segundo paso:
Calcular el coeficiente FAE la cual se obtiene mediante la multiplicación de los valores
evaluados en los 15 diferentes conductores de coste.
8
Para ello utilizaremos la siguiente tabla:
El coeficiente FAE se obtiene de los conductores del coste que se aplicaron para
nuestro software:
FAE=1.15*1.00*0.85*1.11*1.00*1.00*1.07*0.86*0.82*0.70*1.00*0.95*1.00*0.91*1.08
=0.53508480
Tercer paso:
Con los valores ya calculados procedemos a estimar los factores de esfuerzo, tiempo,
productividad y recursos necesarios.
Calculo de esfuerzo [E]
E = a KLDC e * FAE =3.2*(8.363) ^1.05*0.53508480=15.91 personas/mes
Calculo de tiempo de desarrollo [T]
T= c Esfuerzo d = 2.5*(15.91) ^0.38=7.15 meses
Calculo de productividad [PR]
PR= LDC/Esfuerzo = 8363/15.91 = 525.64 LDC/persona mes
Calculo de personal Promedio [P]
9
P= E/T = 15.91/7.15 = 2.22 personas
Conclusión.
Según estas cifras será necesario un equipo de tres personas trabajando alrededor
de 7 meses, pero puesto que el desarrollo del proyecto debe realizarse en un plazo de 3
meses.
Incrementaremos a 6 personas el número de personas del equipo de proyecto (ya que
15,91/3 nos da alrededor de este resultado).
Así pues, tendremos un equipo formado por 1 jefe de Proyecto, 2 Analistas, 2
programadores y 1 Responsable de calidad.
Costos totales del proyecto:
Concepto Costos fijos
Administradores 2000.00 por quincena
Limpieza 600.00 por mes
Papelería 500.00 por mes
Luz/Agua 400.00 por mes
Redes/Comunicación 500.00 por mes
Alquiler 2000.00 por mes
Programadores 2000.00 por quincena
10
Luz/Agua costos=1000.00
5.- Redes/Comunicación.
(500.00) (2.5) =1250.00
Redes/Comunicación costos=1250.00
6.- Alquiler.
(2000.00) (2.5) =5000.00
Alquiler costos=5000.00
7.- Programadores.
(2000.00) (2) =4000.00
(4000.00) (2) =8000.00
(8000.00) (2.5) =20,000.00
Programadores costos=20,000.00
Costo Total:
32000+1500+1250+1000+1250+5000+20000= 62,000.00
11
1.5. Planificación temporal.
Calendario de ejecución del proyecto.
-- -- --
12
Nombre de tarea Comienzo Fin Duración Horas
totales
Elaboración DOP 29/09/2016 2/10/2016 2 días 10 h
Programadores
Rafael Martínez Jaramillo
Yesenia Martínez Pérez
13
Lugar de trabajo.
Se trabajará en el salón de clases ubicado en el tecnológico superior de poza
rica, para trabajar en el desarrollo del software, así como en distintos lugares,
que dependerán de la situación y del tipo de tarea a realizar. Se procurará que el lugar
elegido para desempeñar laboras sea silenciosa y equipada.
El jefe del proyecto será el encargado de guardar los archivos importantes en su domicilio,
con correspondientes respaldos.
Equipamiento.
Se cuenta con:
2 mesas.
6 sillas.
1 pantalla de plasma.
6 laptops.
14
Bitácora.
15
2. Análisis.
a) Propósito.
Crear un sistema para la gestión y mejoramiento de la empresa Renta un Libro.
16
e) Referencias.
1. LOS SISTEMAS DE CONTROL DE LA FUERZA DE VENTAS
(THE SALES FORCE CONTROL SYSTEMS).
María de Miguel Molina, Alejandro Benet.
Abstract: El objetivo de este análisis es el estudio y la adecuación de los sistemas
utilizados para controlar a la fuerza de ventas: los que usan el resultado como referencia y
los que tienen en cuenta aspectos relacionados con el comportamiento de los vendedores
para determinar si cumplen los objetivos establecidos por la empresa. Se trata pues de un
aspecto complejo que debe indicar a los vendedores cómo se supone que deben realizar su
trabajo (Oliver y Anderson, 1994). La literatura revisada indica que en la mayoría de los
casos se utilizarán sistemas híbridos, con un predominio de uno u otro en función del tipo
de empresa, producto y objetivo. Este trabajo pretende contribuir en el ámbito profesional a
la identificación de las variables más adecuadas en función de los objetivos que quiera
lograr cada empresa, así como de su tipo de producto. Esto en concreto puede ser de gran
utilidad para las pymes que ordinariamente carecen de estos sistemas de control, pero
intuitivamente saben que tienen importantes recorridos de mejora en la gestión de sus
fuerzas de ventas. Desde un punto de vista académico, estos contenidos pueden servir para
reflexionar sobre los sistemas de control de la fuerza de ventas y sugerir desarrollos
posteriores.
17
3. EL COMERCIO ELECTRÓNICO Y LA LOGÍSTICA EN EL
CONTEXTO LATINOAMERICANO.
Diana Paola Ballesteros Riveros, Pedro Pablo Ballesteros Silva.
Abstrac: Se pretende en este documento destacar la importancia del
comercio electrónico, desde las formas de realizar las transacciones por este medio,
sus aspectos legales, los sistemas de seguridad y cómo la logística utiliza el e –
commerce para mejorar la gestión de comercialización de las organizaciones. Se
hace para el efecto, una revisión bibliográfica, se citan datos estadísticos recientes
que complementan el artículo.
Característica 2.
Selección (Catálogo): Aquí se encontrarán todos los títulos con los cuales cuente la
librería. Así mismo una breve descripción de cada título.
18
Característica 3.
Renta: Esta sección como su nombre lo indica, nos dará la posibilidad de rentar
un título, evitando así las filas en días concurridos.
2.1.4 Ambiente de Operación.
Se desarrolla en MIT App Inventor 2 por motivo que es una Web App´s y este sistema es el
más usado entre los usuarios.
2.1.5 Restricciones de Diseño e Implementación.
La Web App´s debe basarse en Android, se usará una base de datos NoSQL para almacenar
la información de las características de los libros, manteniendo la atomicidad y
confiabilidad.
2.1.6 Suposiciones y Dependencias.
La plataforma MIT App Inventor 2 tiene diversas y completas funcionalidades, por lo tanto,
es ideal para satisfacer los requerimientos para el desarrollo de la aplicación.
19
Se tendrá un servidor en la nube donde se alojará la información de la base de
datos de nuestra app.
Es necesario la conexión a internet para poder accesar a la base de datos o para
poder tener acceso a ella.
La conexión a internet es necesaria para poder tener un buen funcionamiento.
20
3. Diseño.
3.1 Técnicas de elicitación en requerimientos (Entrevista).
Inicio.
El motivo por el cual se eligió la entrevista como técnica de elicitación fue por la
interacción y contacto con el cliente ya que de esta manera se conocen las necesidades que
tiene y además saber que espera de nuestro software final.
Desarrollo.
Se hizo una cita previa para la entrevista ya que el cliente contaba con una agenda ocupada.
Se citó en un lugar neutral para ambos y de esta manera se llevó a cabo la presente
entrevista donde las preguntas no fueron subjetivas para tener un mejor desarrollo durante
la misma y recabar la información útil para el desarrollo del proyecto al mismo tiempo
satisfacer las necesidades del cliente.
Cierre.
La entrevista dio los resultados necesarios por el momento y se acordó una cita próxima
para detallar los puntos del contrato y las fechas de entrega.
21
3.2Herramientas de modelado de sistemas.
Diagrama 1.
22
Diagrama 1.1.
23
La opción añadir libro será la cual obtenga la información de los libros que se
desean guardar a la base de datos, pidiendo los campos: título, autor y género.
Diagrama 1.3
La aplicación cuenta con un sistema de filtrado para que los usuarios busquen la
información de forma más cómoda ya que se dan tres opciones del mismo: filtro por título,
filtro por género y filtro por autor.
Diagrama 1.4
En el apartado de rentas el usuario podrá rentar los libros que estén disponibles, tiene un
buscador para su fácil acceso a los datos, así como la opción de elegir la fecha en la cual
será entregado.
24
4. Implementación (Codificación).
4.1 Screen1 (Inicio de la WebApp`s).
Captura de Pantalla.
Código Screen1.
25
4.2 Login_Principal.
Captura de pantalla.
Código Login_Principal.
NOTA:
26
4.3 Login_Usuario.
Captura de pantalla.
27
Código Login_Usuario.
4.4 RegistroUsuario.
Captura de pantalla.
28
Código RegistroUsuario.
29
4.5 Login_Admin.
Captura de pantalla.
Código Login_Admin.
30
4.6 RegistroAdministrador.
Captura de pantalla.
Código RegistroAdministrador.
31
4.7 Catalogo.
Captura de Pantalla.
Código Catalogo.
32
33
34
35
36
37
38
39
5. Pruebas.
5.1 Funciones.
Renta un Libro.
40
1. Pantalla de Inicio.
La pantalla de inicio cuenta con dos opciones:
“Administrador” corresponde al
acceso del administrador o encargado de la empresa Renta
un Libro.
“Usuario” corresponde a todos los
clientes de la empresa.
2. Login
Administrador.
Para poder utilizar la app
el administrador debe tener
una cuenta.
“Ingresar” una vez
introducido el usuario y la
contraseña, pulsar este
botón para acceder.
“Registrar” si desea
registrarse pulse el botón y
accederá al formulario de
registro.
41
3. Registro
Administrador.
Se deben llenar los tres
campos correspondientes
para poder creta una
cuenta.
“Atrás” regresa a la
pantalla Login
Administrador.
“Registrar” una vez
llenados los campos pulsar
este botón para su registro.
4. Catálogo.
Cuenta con cinco botones:
“Añadir Libro” accede a la pantalla ‘Ingreso de
Datos’ (este botón es especial para el administrador).
“Buscar” accede a la pantalla ‘Buscar’.
“Rentas” accede a la pantalla ‘Rentas’.
“Cerrar Sesión” te envía a ‘Pantalla Inicio’.
42
5. Ingreso de
Datos.
Llenar los datos
solicitados; cuenta con
cuatro botones:
“Atrás” envía a la
pantalla ‘Catalogo’.
“Continuar” si
desea agregar más de un
libro en ese momento
pulsar este botón para
seguir agregando.
“Añadir Libro”
después de haber llenado los datos solicitados dar clic.
“Guardar” guarda todos los datos ingresados.
6. Login Usuario.
Para poder utilizar la app el cliente/usuario debe tener una
cuenta.
“Ingresar” una vez introducido el usuario y la
contraseña, pulsar este botón para acceder.
“Registrar” si desea registrarse pulse el botón y
accederá al formulario de registro.
43
7. Registro Usuario.
Se deben llenar los tres campos correspondientes para poder creta una cuenta.
“Atrás” regresa a la pantalla Login Usuario.
“Registrar” una vez llenados los campos pulsar este botón para su registro.
8. Buscar.
Cuenta con cuatro botones:
“Título” accede a la pantalla ‘Filtro Título’.
“Autor” accede a la pantalla ‘Filtro Autor’.
“Género” accede a la pantalla ‘Filtro Género’.
“Atrás” regresa a la pantalla ‘Catálogo’.
44
9. Filtro Título.
Busca los libros por su título.
Cuenta con un botón:
“Atrás” regresa a la pantalla ‘Buscar’.
45
12. Rentas.
En la línea ‘Libro’ se escribe el nombre del libro que se desea buscar, al seleccionarlo
aparecerá la notificación ‘Rentar’ que cuenta con las opciones ‘Si’ o ‘No’ para rentar el
libro seleccionado.
46
13. Historial de Rentas.
Muestra la siguiente información del libro seleccionado:
Titulo.
Fecha del comienzo de la renta del libro.
“Entrega” dar clic en el icono del calendario y se desplegara un calendario para
elegir la fecha de entrega, cuenta con las opciones ‘Aceptar’ en el caso de tener la
fecha deseada o ‘Cancelar’ para cancelar/eliminar la fecha de entrega.
“Estado” después de tener la fecha seleccionada su estado será ´RENTADO´.
5.2 Errores.
En cuanto a la información almacenada en la base de datos Firebase se obtenía el error de la
concatenación de los datos en el nodo Titulo.
Antes.
Después.
47
5.3 Base de Datos (Firebase).
Nodos principales.
Nodo Administradores.
Nodo Usuarios.
48
Nodo Libros.
49
6. Instalación/Despliegue (Liberación).
La empresa Renta un Libro proporcionara el apk de la Web App`s la cual se
muestra a continuación:
50
Comenzará la instalación.
Fin de la instalación.
51
Se visualizará la aplicación ya instalada en su
dispositivo.
52
7. Uso y mantenimiento.
Manual de usuario.
Renta un Libro.
53
14. Pantalla de Inicio.
La pantalla de inicio cuenta con dos opciones:
“Administrador” corresponde al
acceso del administrador o encargado de la empresa Renta
un Libro.
“Usuario” corresponde a todos los
clientes de la empresa.
15. Logi
n Administrador.
Para poder utilizar la app
el administrador debe tener
una cuenta.
“Ingresar” una vez
introducido el usuario y la
contraseña, pulsar este
botón para acceder.
“Registrar” si desea
registrarse pulse el botón y
accederá al formulario de
registro.
54
16. Regi
stro Administrador.
Se deben llenar los tres
campos correspondientes
para poder creta una
cuenta.
“Atrás” regresa a la
pantalla Login
Administrador.
“Registrar” una vez
llenados los campos pulsar
este botón para su registro.
17. Catálogo.
Cuenta con cinco botones:
“Añadir Libro” accede a la pantalla ‘Ingreso de
Datos’ (este botón es especial para el administrador).
“Buscar” accede a la pantalla ‘Buscar’.
“Rentas” accede a la pantalla ‘Rentas’.
“Cerrar Sesión” te envía a ‘Pantalla Inicio’.
55
18. Ingr
eso de Datos.
Llenar los datos
solicitados; cuenta con
cuatro botones:
“Atrás” envía a la
pantalla ‘Catalogo’.
“Continuar” si
desea agregar más de un
libro en ese momento
pulsar este botón para
seguir agregando.
“Añadir Libro”
después de haber llenado los datos solicitados dar clic.
“Guardar” guarda todos los datos ingresados.
56
20. Registro Usuario.
Se deben llenar los tres campos correspondientes para poder creta una cuenta.
“Atrás” regresa a la pantalla Login Usuario.
“Registrar” una vez llenados los campos pulsar este botón para su registro.
21. Buscar.
Cuenta con cuatro botones:
“Título” accede a la pantalla ‘Filtro Título’.
“Autor” accede a la pantalla ‘Filtro Autor’.
“Género” accede a la pantalla ‘Filtro Género’.
“Atrás” regresa a la pantalla ‘Catálogo’.
57
22. Filtro Título.
Busca los libros por su título.
Cuenta con un botón:
“Atrás” regresa a la pantalla ‘Buscar’.
58
25. Rentas.
En la línea ‘Libro’ se escribe el nombre del libro que se desea buscar, al seleccionarlo
aparecerá la notificación ‘Rentar’ que cuenta con las opciones ‘Si’ o ‘No’ para rentar el
libro seleccionado.
59
26. Historial de Rentas.
Muestra la siguiente información del libro seleccionado:
Titulo.
Fecha del comienzo de la renta del libro.
“Entrega” dar clic en el icono del calendario y se desplegara un calendario para
elegir la fecha de entrega, cuenta con las opciones ‘Aceptar’ en el caso de tener la
fecha deseada o ‘Cancelar’ para cancelar/eliminar la fecha de entrega.
“Estado” después de tener la fecha seleccionada su estado será ´RENTADO´.
60
Otros requerimientos.
Glosario:
61