PDG - Peter Ciro Alanoca Aruquipa
PDG - Peter Ciro Alanoca Aruquipa
PDG - Peter Ciro Alanoca Aruquipa
PROYECTO DE GRADO
EL ALTO – BOLIVIA
2020
Dedicatoria
Dedico el presente proyecto:
A mis padres.
A mi familia.
A mi hermana.
A Dios, por haberme permitido llegar a este momento tan especial, por haberme dado
salud, fortaleza y sabiduría para continuar y lograr mis objetivos.
Gracias a la Ing. Marisol Arguedas Balladares. Tutor metodológico, por sus palabras de
aliento y guía profesional para la culminación y defensa de este proyecto.
A el Ing. Freddy Alanoca Coarite. Tutor Revisor, por brindarme su apoyo incondicional,
tiempo, dedicación y por su comprensión, me permitió culminar del presente trabajo.
A el Ing. Reynaldo Javier Zeballos Daza. Tutor especialista por el voto de confianza y la
orientación específica en la realización del proyecto.
Al Sr. Director Ing. David Carlos Mamani Quipe. por el apoyo al frente de la Carrera de
Ingeniería de Sistemas y al personal encargado de la administración. Y fundamentalmente
a la Universidad Pública de El Alto, mi casa superior de estudios donde adquirí los
conocimientos y formación que me impulsan a ser mejor día a día.
Por último, agradecer al Lic. Luis Loza Pari Gerente del área de Negocio del Banco de
Crédito. Quien me abrió la puerta para poder demostrar mi capacidad profesional.
El presente proyecto de grado pretende sitematizar los procesos que la empresa realiza como las
transferencias y los pagos de servicios de manera inmediata, ya que estos procesos son de vital
importancia para la empresa y es necesario que se tenga que sistematizar las transacciones
financieras para usuarios que no tengan una cuenta bancaria. El Proyecto de Grado titulado
oficinas del Banco de Crédito con el objetivo de sistematizar las transacciones financieras
presenciales.
Para el desarrollo del proyecto se utilizó la metodología Scrum, que propone un modelo de proceso
Para la conclusión del desarrollo de la aplicación Android se utilizó como herramienta primordial
el lenguaje de programación Java, con el gestor de base de datos SQL SERVER y con la ayuda
CAPITULO II
CAPITULO III
CAPITULO I
CAPITULO II
CAPITULO III
CAPITULO IV
CAPITULO V
MARCO PRELIMINAR
1
1.1 Introducción
rápidamente e influyendo en la manera como los bienes y servicios son comercializados a través
hacia la banca electrónica, haciendo que el sistema de comercio mundial este comenzando una
etapa en la cual los bienes y servicios son comercializados utilizando cada vez más medios de
entrega electrónicos, reduciendo costos y mejorando la productividad, al igual que las opciones
del consumidor.
A pesar de la tendencia a nivel mundial, la banca electrónica en Bolivia sigue rezagado. Las
razones pueden ser diversas desde la falta de un adecuado sistema de pago, la desconfianza que
genera su uso por la informalidad, la baja penetración del internet en el país y la escasez de una
normativa específica, como las principales limitaciones que obstruyen su desarrollo. A pesar de
país.
La metodología utilizada para llevar a cabo este proyecto Scrum, debido a las condiciones y
requerimientos planteados por los solicitantes y que dadas las condiciones, tiempo y recursos se
La calidad fue avaluada basada en la ISO 9126, que es un estándar internacional para la
el lenguaje de programación Java, con el gestor de base de datos SQL SERVER y con la ayuda
2
1.2 Antecedentes
El Banco de Crédito BCP opera en el Perú desde 1889 como Banco Italiano y a partir de
1941 como Banco de Crédito del Perú. El BCP es una institución sólida cuya vocación y
principios la han hecho líder indiscutible del mercado peruano a lo largo de sus más de 115
Desde 1995 forma parte del grupo Credicorp, uno de los conglomerados financieros más
importantes de Latinoamérica, que combina los negocios bancarios del BCP y del Atlantic
Security Bank con los negocios de seguros de Pacífico Peruano Suiza, la empresa más
grande del Perú en su rubro. Las acciones de Credicorp están inscritas en la Bolsa de Valores
de Nueva York, lo que le permite acceder con facilidad a los mercados de capitales
internacionales.
El Banco de Crédito de Bolivia S.A. es una empresa 100% subsidiaria del Banco de Crédito
adquirimos el Banco Popular, institución que se ubicaba en el puesto número trece del
Esta primera apuesta por Bolivia fue muy exitosa, lo que nos alentó a seguir invirtiendo en el
país, adquiriendo en 1998 el Banco de La Paz y un año más tarde la cartera del Banco
Boliviano Americano. Con estas compras, y en base al empuje de nuestro excelente equipo
3
En el año 2000, comenzaron un proceso de renovación tecnológica sin precedentes con el fin
de sentar las bases necesarias para otorgar a sus clientes el mejor servicio de la banca
sistemas informáticos con los del Banco de Crédito BCP en Perú e introdujimos el
Desarrollaron modernos canales electrónicos como la Banca por Teléfono y la Banca por
Internet para llevar al Banco a cualquier lugar del mundo donde nuestros clientes están.
Asimismo, invirtieron más de dos millones de dólares para ampliar su red de canales de
atención al público, consolidándola como la más grande del país con 45 oficinas y 125
En la actualidad, sus esfuerzos han hecho del Banco de Crédito de Bolivia S.A. una
institución moderna, innovadora y con excelente calidad de atención. Tienen la cartera más
sana y con una de las mayores coberturas del sistema, lo que aunado al sólido respaldo
internacional del BCP, les pone en las mejores condiciones para seguir avanzando hacia el
La apuesta del Banco de Crédito por Bolivia es definitiva y por ello han renovado nuestra
que ponemos nuestro sólido respaldo internacional al servicio del país, con el compromiso de
4
modernizándonos, seguirán innovando y contribuyendo al desarrollo del país y de sus
clientes. Todo esto, con el propósito de seguir siendo el mejor Banco de Bolivia.
Misión
Visión
Principios
• Eficiencia
• Gestión al riesgo
• Transparencia
5
• Disposición al cambio
Tener una actitud positiva para promover y adoptar los cambios y mejores prácticas.
• Disciplina
trabajo establecidos.
Valores
• Honestidad
• Compromiso
• Respeto
• Transparencia
• Optimismo
• Actitud Positiva
6
1.2.2 Antecedentes académicos
desde cualquier lugar geográfico con cobertura celular, está dividido en cinco capítulos, en el
primer capítulo habla de los de los antecedentes del negocio, posterior mete hablamos sobre
la situación actual del negocio la forma de procesar las transacciones, proseguimos con la
Este proyecto de investigación tiene los siguientes objetivos generales identificar los
Customer, proponer una guía de integración de estos sistemas de pago en un sitio web.
Este trabajo de tesis presenta distintas soluciones. Por un lado, presenta dos soluciones de
pago basadas en monedero inteligente que pretenden facilitar el uso de estos dispositivos de
una forma progresiva. En primer lugar, facilitando el pago con los monederos existentes y,
7
en segundo lugar, proponiendo un nuevo monedero que facilite su uso para pagos en la Web.
“BIGO”
La primera billetera digital multiemisor del Uruguay es una realidad, que permite realizar
BIGO permite “digitalizar” en un celular todas las tarjetas de crédito, débito y prepagas Visa,
para realizar compras de forma fácil, rápida y segura, simplemente acercando el celular a una
“SAFRA WALLET”
Para utilizar el servicio no es necesario ser cliente de Banco Safra, y el proceso de registro es
modelo diferente al de los medios tradicionales, las transferencias, los retiros y los pagos por
“BIMO”
Se trata de una estrategia con la que la banca espera que se incremente la bancarización en el
país. En total 29 entidades forman parte de la plataforma. De ellas, 16 son bancos y el resto
son cooperativas y redes de cooperativas. Pablo Narváez, gerente general de Banred, explicó
que BIMO está diseñada para personas que ya están bancarizadas, pero también por personas
8
no tienen cuentas en el sistema financiero, que podrán usar la plataforma para la apertura de
“TIGO MONEY”
Tigo Money es el primer servicio de billetera móvil en Bolivia que revolucionará la manera
A través de Tigo Money conviertes tu dinero efectivo en dinero electrónico que se almacena
Transferencia a otras cuentas, pagar por bienes o servicios básicos: agua, luz, telefonía,
“BILLETERA VIVA”
Es un medio de pago casado al número de teléfono celular del cliente, es una alternativa que
móvil es ofrecido por el BNB y BCP. Los requisitos para tener una billetera móvil es tener
“BILLETERA ENTEL”
La estatal Entel Financiera ingresó a la era de las transacciones electrónicas y presentó este
9
iniciativa en una conferencia de prensa que ofreció junto con el presidente del Banco Central
de Bolivia (BCB).
financieras con la mejor tecnología, calidad y servicio al cliente. Dicha tecnología tiene que estar
a la vanguardia y exigencias del mercado, por lo tanto, se tiene que estar innovando
constantemente para cumplir con los clientes y no clientes del banco construyendo relaciones de
ofrecer servicios financieros a personas que no tienen una cuenta bancaria, lo que genera una
• Las transferencias o envió de dinero actualmente se realizan con una cuenta bancaria,
generando que las personas estén obligadas a abrir una cuenta bancaria en ventanillas.
• Las transferencias a otros bancos para personas sin cuenta bancaria se realizan de
manera presencial, generando largas filas y molestia para los clientes e incomodidad.
personas sin cuenta bancaria se realizan de manera presencial, lo que genera que la
10
• Las personas sin cuenta bancaria prefieren utilizar aplicaciones como Tigo Money
que ofrecen servicios financieros similares a los que una entidad financiera, lo que
• Las personas que no tienen una cuenta bancaria no pueden portar su dinero en un
1.4 Objetivos
Desarrollar una aplicación Android que resuelva los problemas de servicios financieros a
personas que no tienen una cuenta bancaria, y que cubra las necesidades de los clientes del
Banco de Crédito de Bolivia, previo diagnóstico para describir los procesos de pagos y
transferencias.
• Sistematizar los envíos de dinero para que los clientes no estén obligados a abrir una
cuenta bancaria.
• Sistematizar de transferencias a otros bancos para que disminuya las filas de clientes
generadas en plataforma.
• Sistematizar los pagos de servicios para que los clientes realicen sus pagos de manera
no presencial.
• Realizar una aplicación que ofrezca todos los servicios de la competencia y que este a
la altura del mercado nacional de tal manera que más personas sean clientes del
banco.
• Realizar una aplicación que permita portar el dinero de manera digital facilitando el
pago electrónico.
11
1.5 Justificación
generación, tales como: Scrum para la ingeniería del proyecto, se aplicarán la combinación
de Java, C# y SQL SERVER que conjuntamente tienen ciertas ventajas para el desarrollo de
aplicaciones móviles como la programación orientada a objetos además que son estándares
costos y tiempo.
Se beneficiará los clientes y el Banco de Crédito de Bolivia porque los clientes podrán tener
acceso a las transacciones y pagos de servicios sin tener que ir a un banco o tener una cuenta
financieras de los clientes para poder tomar decisiones que afecten la imagen del banco.
12
1.6 Metodología
Scrum es un proceso en el que se aplican de manera regular un conjunto de buenas prácticas para
prácticas se apoyan unas a otras y su selección tiene origen en un estudio de la manera de trabajar
En Scrum se realizan entregas parciales y regulares del producto final, priorizadas por el
beneficio que aportan al receptor del proyecto. Por ello, Scrum está especialmente indicado para
proyectos en entornos complejos, donde se necesita obtener resultados pronto, donde los
El proceso
En Scrum un proyecto se ejecuta en ciclos temporales cortos y de duración fija (iteraciones que
normalmente son de 2 semanas, aunque en algunos equipos son de 3 y hasta 4 semanas, límite
máximo de feedback de producto real y reflexión). Cada iteración tiene que proporcionar un
resultado completo, un incremento de producto final que sea susceptible de ser entregado con el
El proceso parte de la lista de objetivos/requisitos priorizada del producto, que actúa como plan
del proyecto. En esta lista el cliente (Product Owner) prioriza los objetivos balanceando el valor
que le aportan respecto a su coste (que el equipo estima considerando la Definición de Hecho) y
Las actividades que se llevan a cabo en Scrum son las siguientes (los tiempos indicados son para
iteraciones de 2 semanas):
13
Planificación de la iteración
partes:
priorizada del producto o proyecto. El equipo pregunta al cliente las dudas que surgen y
selecciona los requisitos más prioritarios que prevé que podrá completar en la iteración,
de manera conjunta y los miembros del equipo se autoasignan las tareas, se autoorganizan
para trabajar incluso en parejas (o grupos mayores) con el fin de compartir conocimiento
complejos.
Ejecución de la iteración
Cada día el equipo realiza una reunión de sincronización (15 minutos), normalmente delante de
un tablero físico o pizarra (Scrum Taskboard). El equipo inspecciona el trabajo que el resto está
realizando (dependencias entre tareas, progreso hacia el objetivo de la iteración, obstáculos que
pueden impedir este objetivo) para poder hacer las adaptaciones necesarias que permitan cumplir
Durante la iteración el Facilitador (Scrum Master) se encarga de que el equipo pueda mantener el
14
• Protege al equipo de interrupciones externas que puedan afectar el objetivo de la iteración
o su productividad.
Durante la iteración, el cliente junto con el equipo refina la lista de requisitos (para prepararlos
para las siguientes iteraciones) y, si es necesario, cambian o replanifican los objetivos del
proyecto (10%-15% del tiempo de la iteración) con el objetivo de maximizar la utilidad de lo que
Inspección y adaptación
El último día de la iteración se realiza la reunión de revisión de la iteración. Tiene dos partes:
cambios que haya habido en el contexto del proyecto, el cliente realiza las adaptaciones
• Retrospectiva (1,5 horas). El equipo analiza cómo ha sido su manera de trabajar y cuáles
son los problemas que podrían impedirle progresar adecuadamente, mejorando de manera
identificados que estén más allá del ámbito de acción del equipo.
15
1.7 Herramientas
Lenguajes de programación
Se seleccionó Java porque es con la que el banco tiene contratos de soporte además que el área de
arquitectura pide que sea con tecnología nativa para desarrollo móvil.
16
Gestores de base de datos
Se selecciona Microsoft SQL Server porque es un sistema de gestión de base de datos relacional,
17
de corromper datos, incluso si los errores no se producen en el propio gestor síno en el sistema en
el que está.
Servidor Web
Se seleccionó Windows Server 2012 porque es con la que el banco tiene contratos de soporte
además que el área de arquitectura pide que sea con tecnología Microsoft.
18
1.8 Límites y alcances
1.8.1 Límites
• La aplicación será desarrollada solo para el sistema operativo Android con la versión
4.2 superior.
• Las transferencias a otras cuentas, pagos de servicios serán a través de servicios web
• Para el depósito y retiro por cajero automáticos serán a través de servicios web
1.8.2 Alcances
• Módulo de registro.
• Módulo de transferencias.
19
1.9 Aportes
• Una aplicación móvil que permitirá realizar las operaciones financieras sin la necesidad
20
CAPITULO II
MARCO TEORICO
21
2.1 Introducción
El Banco de Crédito BCP opera en el Perú desde 1889 como Banco Italiano y a partir de 1941
como Banco de Crédito del Perú. El BCP es una institución sólida cuya vocación y principios la
han hecho líder indiscutible del mercado peruano a lo largo de sus más de 115 años de impecable
trayectoria.
Desde 1995 forma parte del grupo Credicorp, uno de los conglomerados financieros más
importantes de Latinoamérica, que combina los negocios bancarios del BCP y del Atlantic
Security Bank con los negocios de seguros de Pacífico Peruano Suiza, la empresa más grande
del Perú en su rubro. Las acciones de Credicorp están inscritas en la Bolsa de Valores de Nueva
York, lo que le permite acceder con facilidad a los mercados de capitales internacionales.
El Banco de Crédito de Bolivia S.A. es una empresa 100% subsidiaria del Banco de Crédito
adquirimos el Banco Popular, institución que se ubicaba en el puesto número trece del sistema
financiero nacional.
Esta primera apuesta por Bolivia fue muy exitosa, lo que nos alentó a seguir invirtiendo en el
país, adquiriendo en 1998 el Banco de La Paz y un año más tarde la cartera del Banco Boliviano
22
profesionales, fuimos ganando la preferencia y confianza de nuestros clientes hasta ubicarnos
En el año 2000, comenzaron un proceso de renovación tecnológica sin precedentes con el fin de
sentar las bases necesarias para otorgar a sus clientes el mejor servicio de la banca boliviana.
informáticos con los del Banco de Crédito BCP en Perú e introdujimos el Servimatic, su
innovador sistema de filas virtuales, que revolucionó el concepto de atención al cliente no sólo
Desarrollaron modernos canales electrónicos como la Banca por Teléfono y la Banca por
Internet para llevar al Banco a cualquier lugar del mundo donde nuestros clientes están.
Asimismo, invirtieron más de dos millones de dólares para ampliar su red de canales de atención
al público, consolidándola como la más grande del país con 45 oficinas y 125 cajeros
En la actualidad, sus esfuerzos han hecho del Banco de Crédito de Bolivia S.A. una institución
moderna, innovadora y con excelente calidad de atención. Tienen la cartera más sana y con una
de las mayores coberturas del sistema, lo que aunado al sólido respaldo internacional del BCP,
les pone en las mejores condiciones para seguir avanzando hacia el liderazgo indiscutible del
La apuesta del Banco de Crédito por Bolivia es definitiva y por ello han renovado nuestra
imagen institucional, haciéndola más moderna y cercana. Su nuevo logotipo es el símbolo de que
ponemos nuestro sólido respaldo internacional al servicio del país, con el compromiso de otorgar
23
De ahora en adelante, trabajaran con mayor dedicación, accesibilidad y flexibilidad. Pondrán a
2.2.1 Misión
2.2.2 Visión
2.2.3 Estructura
Conformada en primera instancia por el Directorio y la Gerencia General, quienes ejercen sus
del Banco y conforme a las Directrices Básicas para la Gestión de un Buen Gobierno
24
2.2.4 Organigrama
25
2.2.5 Conformación
El Directorio está conformado por 8 miembros, todos ellos hombres al igual que en la gestión
El objetivo principal del Directorio es fiscalizar la gestión y velar por la solidez financiera de la
• Evaluar regularmente las prácticas de gobierno corporativo con las cuales opera,
I. Auditoría
II. Legal
V. Sucursales
VI. Minorista
VII. Empresas
VIII. Riesgos
26
IX. Finanzas
X. Sistemas y Procesos
• De Gobierno Corporativo
• Ética
• Cumplimiento
• Auditoría
• Seguridad Física
• Tecnología de la información
• Seguridad de Información
• Inversiones
• Gestión
• Tasas y Tarifas
• Productividad
• Créditos (Nacional)
27
2.2.6 Modelamiento del sistema actual
El siguiente diagrama de flujo representa los pasos que sigue un cliente para aperturar una
cuenta.
28
2.2.6.2 Proceso de transferencias entre cuentas
El siguiente diagrama de flujo representa los pasos que sigue un cliente para realizar
transferencias entre cuentas.
29
2.2.6.3 Proceso de depósito a cuenta
El siguiente diagrama de flujo representa los pasos que sigue un cliente para realizar el
depósito a cuenta.
30
2.2.6.4 Proceso de pago de servicios básicos
El siguiente diagrama de flujo representa los pasos que sigue un cliente para realizar los
pagos de servicios básicos.
31
2.3 Sistema
2020), el término sistema (proveniente del latín systēma) se define como "un objeto complejo
cuyas partes o componentes se relacionan con al menos algún otro componente". Según el
dinámicamente relacionales, en interacción que desarrollan una actividad para lograr un objetivo
o propósito operando como datos, energía, materia unidos al ambiente que rodea el sistema para
informativo) para dispositivos inteligentes, mediante el cual podemos guardar dinero u asociar
otros medios de pago (las tarjetas de crédito y débito), para efectuar o recibir pagos, y realizar
transferencias a terceros. La billetera móvil al igual que las tarjetas de crédito y débito está
32
Es por ello que su funcionamiento es similar a las tarjetas de débito o crédito, pero la principal
A diferencia de las apps de “pago móvil”, este tipo de aplicaciones no necesariamente deben
(https://www.consumidor.ftc.gov/articulos/s0018-aplicaciones-moviles-que-son-y-como-funcionan, fecha
septiembre de 2011) indica que una aplicación móvil es un programa que usted puede descargar y
al que puede acceder directamente desde su teléfono o desde algún otro aparato móvil como por
Se necesita un Smartphone o algún otro aparato móvil con acceso a internet. No todas las
aplicaciones funcionan en todos los dispositivos móviles. Cuando se compra uno de estos
aparatos móviles Android, Apple, Microsoft y BlackBerry tienen tiendas de aplicaciones que
operan en línea en las cuales se pude buscar, descargar e instalar las aplicaciones. Algunos
comerciantes minoristas también operan tiendas de aplicaciones en internet. Se debe usar una
tienda que le ofrezca las aplicaciones que funcionen con el sistema operativo de su dispositivo
móvil.
El sistema operativo Android, al igual que los propios teléfonos móviles, ha evolucionado
rápidamente, acumulando una gran cantidad de versiones, desde la 1.0 para el QWERTY HTC
33
2.6.1 Cupcake: Android Versión 1.5
Características: Widgets, teclado QWERTY virtual, copy & paste, captura de videos y poder
Características: Mejoras en Google Maps, salvapantallas animado, incluye zoom digital para
Características: Mejoras para tablets, soporte Flash y Divx, integra Dolphin, multitarea
pudiendo cambiar de aplicación dejando las demás en espera en una columna, widgets y
34
2.6.7 Ice Cream Sandwich: Android Version 4.0
pantalla principal con soporte para 3D, widgets redimensiónales, soporte usb para teclados,
interfaz de usuario. Con este propósito se incorporan varias técnicas: sincronismo vertical,
triple búfer y aumento de la velocidad del procesador al tocar la pantalla (Robledo, 2013).
El principal objetivo de la versión 4.4 es hacer que Android esté disponible en una gama aún
más amplia de dispositivos, incluyendo aquellos con tamaños de memoria RAM de solo 512
MB. Para ello, todos los componentes principales de Android han sido recortados para
reducir sus requerimientos de memoria, y se ha creado una nueva API que permite adaptar el
arquitectura, al utilizar la máquina virtual RT en lugar de Dalvik. Esta novedad ya había sido
tiempo de ejecución del código escrito en Java. Además, se soporta dispositivos de 64bits en
procesadores ARM y x86 y MIPS. Muchas aplicaciones del sistema (Chrome, Gmail, …) se
han incorporado en código nativo para una ejecución más rápida (Robledo, 2013).
35
2.6.11 Mashmallow Android Versión 6.0
Una de las novedades más interesantes es el administrador de permisos. Los usuarios podrán
conocer o retirar ciertos permisos a cada aplicación. Con esto el sistema da mucha más
https://developer.android.com/about/versions/marshmallow, 2020).
En teléfonos tablets con Android 7.0 los usuarios pueden ejecutar dos apps en paralelo o una
En los dispositivos con Android TV, las apps pueden habilitar de forma automática el modo
https://developer.android.com/about/versions/nougat, 2020).
Presenta canales de notificación que te permiten crear un canal que el usuario puede
personalizar para cada tipo de notificación que desees mostrar. Los usuarios pueden
posponer las notificaciones para que reaparezcan posteriormente. Las notificaciones vuelven
a reaparecer con el mismo nivel de importancia con el que aparecieron por primera vez
36
2.6.14 Pie Android Versión 9
permisos relacionados con llamadas telefónicas. Estos cambios afectan a todas las apps que
Esta versión de Android incluirá un tema oscuro para todo el sistema. Algo que los usuarios
de esta plataforma venían pidiendo hace tiempo. Tendrá un modo de activación que
dependerá del usuario, lo que hará posible dejarlo activado siempre, desactivado o también
los ajustes y otras aplicaciones se pondrán en su modo oscuro. Por otra parte, se renovarán
los permisos, de manera que se podrá conocer con estadísticas los permisos más usados por
las aplicaciones y filtrar por tipo de permisos. Otra novedad es que Android 10 permitirá a
las operadoras bloquear las SIM de sus competidores, de tal manera que se podrá bloquear la
segunda ranura de los dispositivos con doble SIM. Esta restricción de bloqueo de la SIM se
libres, es decir, que no estén enlazados a ninguna compañía. Otro punto importante es que
Android incluirá su propio soporte nativo de reconocimiento facial siguiendo, de esta forma,
https://developer.android.com/about/versions/10, 2020).
37
2.6.16 Pie Android Versión 11
Android 11 es el sistema operativo de Google que se revelará a mediados de 2020. Entre sus
manera que el sistema permitiría que las velocidades de lectura de memoria fuesen mucho
más rápidas, mejorando así la seguridad y evitaría la necesidad de otorgar permisos a cada
aplicación nueva. Por otra parte, se espera un mejorado Modo Oscuro (característica
https://developer.android.com/preview, 2020).
al que podemos acceder mediante protocolos Web estándar, utilizando XML para el intercambio
de información.
Normalmente nos referimos con Servicio Web a una colección de procedimientos (métodos) a
los que podemos llamar desde cualquier lugar de Internet o de nuestra intranet, siendo este
de Alicante, 2014).
Cuando conectamos con un servidor web desde nuestro navegador, el servidor nos devuelve la
página web solicitada, que es un documento que se mostrará en el navegador para que lo
38
visualice el usuario, pero es difícilmente entendible por una máquina. Podemos ver esto como
web para humanos. En contraposición, los Servicios Web ofrecen información con un formato
estándar que puede ser entendido fácilmente por una aplicación. En este caso estaríamos ante
Los servicios Web son componentes de aplicaciones distribuidas que están disponibles de forma
externa. Se pueden utilizar para integrar aplicaciones escritas en diferentes lenguajes y que se
plataforma gracias a que los vendedores han admitido estándares comunes de Servicios Web
El WC3 (World Wide Web Consortium) define un servicio Web como un sistema software
diseñado para soportar interacciones máquina a máquina a través de la red. Dicho de otro modo,
los servicios Web proporcionan una forma estandar de interoperar entre aplicaciones software
por las máquinas gracias al uso de XML. Los servicios Web pueden combinarse con muy bajo
aplicaciones que proporcionan servicios simples pueden interactuar con otras para "entregar"
• Un servicio debe poder ser accesible a través de la Web. Para ello debe utilizar
39
lenguaje estándar que pueda conocer cualquier cliente que quiera utilizar el servicio
su interfaz, de manera que pueda ser utilizado de forma automática por cualquier
• Debe poder ser localizado. Deberemos tener algún mecanismo que nos permita
encontrar un Servicio Web que realice una determinada función. De esta forma
Alicante, 2014).
de documentos auto-contenidos que hacen muy pocas asunciones sobre las capacidades
servicios, cualquier interacción punto a punto implica dos endpoints: uno que proporciona
un servicio, y otro de lo consume. Es decir, que un endpoint es cada uno de los "elementos",
en nuestro caso nos referimos a servicios, que se sitúan en ambos "extremos" de la red que
sirve de canal de comunicación entre ellos. Cuando hablamos de servicios Web, un endpoint
40
A nivel técnico, los servicios pueden implementarse de varias formas. En este sentido,
Los servicios Web SOAP, o servicios Web "big", utilizan mensajes XML para
lenguaje XML que define la arquitectura y formato de los mensajes. Dichos sistemas
• Web RESTful
Los servicios Web RESTful (Representational State Transfer Web Services) son
suelen integrar mejor con HTTP que los servicios basado en SOAP, ya que no requieren
Los servicios Web REST utilizan estándares muy conocidos como HTTP, SML, URI,
MIME, y tienen una infraestructura "ligera" que permite que los servicios se construyan
Alicante, 2014).
41
2.7.3 Arquitectura de los Servicios Web
Según José Manuel Ortega Candel (Seguridad en Aplicaciones Web, pag. 106) indica que
los servicios web presentan una arquitectura orientada a servicios que permite crear una
del servicio Web y su uso por parte de un cliente. También es posible desacoplar la
produciendo así una descripción concreta del servicio en WSDL. Dicha descripción concreta
puede entonces publicarse en un servicio de registro como por ejemplo UDDI (Universal
de registro para localizar una descripción de un servicio, a partir de la cual podrá seleccionar
y utilizar una implementación concreta de dicho servicio (José Manuel Ortega Candel,
2018).
42
transporte, más una dirección). Un conjunto de ports definen un elemento service de un
2.8 Intranet
referencia al concepto de red, así mismo puede definirse como una red privada que pertenece a
una institución, organización o empresa que tiene como objetivo conectar, unir, compartir
información entre los empleados, estudiantes o personas que forman parte de dicha organización
Por lo general una intranet consiste en la interconexión de varias redes de área local (LAN) que
se desarrolla a partir del protocolo TCP/IP. Gracias a este protocolo, los usuarios pueden acceder
implementados.
43
• Ofrece rapidez y eficiencia en la comunicación con los empleados: La realización de
accesible a todos los empleados incluidos los que están de viaje o fuera de las
instalaciones centralizadas.
• Existen riesgos de seguridad, las intranets aun con los niveles de seguridad
valiosa información.
• La complejidad del sistema puede inhibir el uso de este. Los empleados pueden
iterativo-incremental, fecha julio de 2020) indica que las metodologías agiles son métodos que
44
requisitos y soluciones evolucionan mediante la colaboración de grupos auto organizados y
multidisciplinarios.
Por lo tanto, existen muchos métodos de desarrollo ágil, la mayoría minimiza riesgos
llamado una iteración, la cual debe durar de una a cuatro semanas. Cada iteración del ciclo de
lanzamiento del producto al mercado, sino que la meta es tener una demo (sin errores) al final de
cada iteración. Al final de cada iteración el equipo vuelve a evaluar las prioridades del proyecto.
software evoluciona constantemente. La ingeniería de software ágil combina una filosofía con un
rápida de software.
45
El cliente interactúa con el equipo de El cliente es parte activa en el proceso de
desarrollo mediante reuniones de entrega desarrollo
Grupos grandes y posiblemente distribuidos Grupos pequeños, con 10 integrantes o
donde a cada integrante se le asignaran tareas menos y trabajando en el mismo sitio en el
especificas cual tienen conocimiento sobre el proceso
de desarrollo
La arquitectura del software es esencial y se Menos énfasis en la arquitectura del
expresa mediante modelos software
Existe un contrato prefijado No existe contrato tradicional o al menos es
bastante flexible
Tabla 2.1. Diferencias entre las metodologías:
Fuente: Elaboración propia
Scrum es una metodología ágil de desarrollo de proyectos que toma su nombre a principios de
los estudios realizados sobre nuevas prácticas de producción por Hirotaka Takeuchi e Ikujijo
Nonaka a mediados de los 80. Aunque surgió como modelo para el desarrollo de productos
tecnológicos, también se emplea en entornos que trabajan con requisitos inestables y que
de software.
Informix y finalmente en Ascential Software Corporation). En 1996 lo presentó junto con Ken
Schwaber como proceso formal, también para gestión del desarrollo de software en OOPSLA
96. Más tarde, en 2001 serían dos de los promulgadores del Manifiesto Ágil. En el desarrollo de
software Scrum está considerado como modelo ágil por la Agile Alliance.
46
Por lo tanto, es una metodología de desarrollo muy simple, que requiere trabajo duro porque no
del proyecto.
aplicación:
• No es apto para todos los proyectos, sobre todo para aquellos en los que intervienen
equipos dispersos.
• Es probable que sea necesario complementarlo con otras metodologías como XP.
47
En la figura N° 2.6 se aprecia los principales contrastes que diferencian el desarrollo
diferentes especializados. Es un equipo único, formado por personas muy competentes, con
perfiles y conocimientos que cubren las disciplinas necesarias para llevar a cabo el trabajo.
Respecto a las fases, se destaca que en el modelo Scrum no hay fases. En realidad, las fases
pasan a ser tareas que se ejecutan cuando se necesitan. No se hace primero el diseño del
concepto o los requisitos, más tarde el análisis, luego el desarrollo, etc. Lo que aplicado al
software serían las fases de: Requisitos del sistema, requisitos del software, análisis, diseño,
48
La gestión ágil de proyectos tiene como objetivo dar garantías a las demandas principales de
• Valor
La gestión ágil se necesita en los mercados rápidos. Su objetivo es dar el mayor valor
innovación continua. Del lanzamiento continuo de novedades, que compiten con los
actualizaciones y ampliaciones.
En la década de los 90, el tiempo medio de salida al mercado de los nuevos productos en
EE.UU. se redujo de 35,5 a 11 meses (Wujec & Muscat, 2002). Este tiempo es un factor
Las estrategias de la gestión ágil para producir resultados en menos tiempo que la
b) Entrega temprana de las primeras partes del producto, que corresponden con las
de mayor urgencia para el cliente, de forma que puede lanzar la primera versión
49
• Agilidad
Capacidad para producir partes completas del producto en periodos breves de tiempo.
• Resultados fiables
Los procesos de la gestión tradicional son buenos cuando consiguen desarrollar de forma
Los procesos de la gestión ágil son buenos, cuando consiguen entregar de forma
manifiesto ágil:
innecesarias.
50
2.10.5 Visión general del proceso
duraciones de 30 días.
En la figura Nº 2.7 se observa una visión general del proceso de desarrollo de software,
Del gráfico, es importante considerar que el Sprint es por tanto el núcleo central que
• Las reuniones
que se determina cuál va a ser el trabajo y los objetivos que se deben cumplir en
esa iteración.
b) Reunión diaria: Breve revisión del equipo del trabajo realizado hasta la fecha y
51
c) Revisión de Sprint: Análisis y revisión del incremento generado.
• Los artefactos
Scrum define una pequeña cantidad de artefactos para el seguimiento del proyecto y
c) Gráfica de progreso
• Los roles
Scrum clasifica a todas las personas que intervienen o tienen interés en el desarrollo del
proyecto en: Dueño del Producto, Equipo Scrum, Scrum Manager o Scrum Master y
“otros interesados”.
usuario. La persona que asume este rol puede ser tanto un cliente como un
52
c) Scrum Master: Definido como Director del Proyecto; esta persona tiene
• Valores
Scrum es una “carrocería” para dar forma a los principios ágiles. Es una ayuda para
organizar a las personas y el flujo de trabajo; como lo pueden ser otras propuestas de
La carrocería sin motor, sin los valores que dan sentido al desarrollo ágil, no funciona.
b) Respeto entre las personas. Los miembros del equipo deben confiar entre ellos y
En la figura Nº 2.8 permite visualizar el modelo aplicativo Scrum, que presenta la secuencia
de pasos metodológicos que se deben seguir para poder aplicar la Metodología Scrum.
53
Figura 2.8. Modelo aplicativo
Fuente: Rodríguez González, Pilar (2008). Estudio de la Aplicación de Metodologías Ágiles para la
De la figura anterior, se observa que el Modelo Scrum está conformado por las siguientes
fases:
parte siempre de un mismo problema: conocer las necesidades de los clientes. Scrum, al
igual que el resto de metodologías ágiles, pretende no centrar las tareas de desarrollo en un
54
conjunto de requisitos formalmente definidos, sino que aboga por la incorporación del
cliente como un miembro más del equipo de desarrollo. De este modo, no se considera el
proceso de definición de requisitos como un fin dentro del desarrollo del proyecto, sino que
los requisitos aparecen implícitamente dentro del contenido de las denominadas historias de
usuario. A continuación, se procede a detallar cada fase del modelo aplicativo Scrum:
En esta primera fase, punto 1 de la figura N° 2.8, antes de comenzar el primer Sprint, es
• ID
• Nombre
55
• Importancia
El ratio de importancia que el Dueño de Producto da a esta historia. Por ejemplo, 10.
O 150. Más alto = más importante. Es preferible evitar el término “prioridad” porque
• Estimación inicial
implementar la historia, comparada con otras historias. Las unidades son “puntos de
“si tuvieras el número óptimo de personas para esta historia (ni muchos ni pocos,
sin distracciones, ¿en cuántos días saldrían con una implementación terminada,
una habitación nos llevaría 4 días”, entonces la estimación inicial son 12 puntos
(3x4). Lo importante no es que las estimaciones absolutas sean correctas (es decir,
que una historia de 2 puntos deba durar 2 días), lo importante es que las estimaciones
relativas sean correctas (es decir, que una historia de 2 puntos debería durar la mitad
• Como probarlo
Una descripción a alto nivel de cómo se demostrará esta historia en la demo al final
56
• Notas
La figura N° 2.9 muestra un ejemplo de pila de producto del lado del dueño del producto.
Estos seis campos son los únicos que se utilizan Sprint tras Sprint. Se mantiene esta tabla en
un documento con la propiedad compartir habilitado (es decir, muchos usuarios pueden
desarrollador necesita abrir el documento para clarificar algo o cambiar una estimación. Por
57
2.10.8 FASE N° 2: Planificación del backlog
Scrum. Una planificación de Sprint mal ejecutada puede arruinar por completo todo el
información como para que puedan trabajar en paz y sin interrupciones durante unas pocas
semanas, y para ofrecer al dueño de producto suficiente confianza como para permitírselo.
Es importante que el dueño de producto asista a la planificación del Sprint, se sabe que a
veces los dueños de producto se resisten a pasar horas con el equipo preparando la
planificación de Sprint.
En esta tercera fase, punto 3 de la figura N° 2.8, se deberá definir el sitio y la hora para el
Scrum Diario.
una hora determinados para el Scrum Diario. Sin ello, tu Sprint está condenado a un mal
58
comienzo. El primer Scrum diario es esencialmente el lanzamiento, donde todo el mundo
• Desventaja de Scrum por las tardes, cuando se llega al trabajo por la mañana, se
tiene que acordar de qué se le dijo a la gente sobre lo que deberían hacer hoy.
• Desventaja de los Scrum por las mañanas, cuando se llegas al trabajo por la mañana,
se debe acordar de qué se hizo ayer para informar sobre ello hoy.
El procedimiento por defecto es seleccionar la hora más temprana a la que ningún miembro
del equipo vaya a quejarse. Usualmente las 9:00, 9:30 o 10:00a.m. Lo más importante es que
sea a una hora a la que todo el equipo acepte con total convencimiento.
Si el tiempo se está agotando. De todos los asuntos que queremos resolver durante la
planificación de Sprint, ¿qué abandonar si se queda sin tiempo? Bueno, normalmente se usa
Prioridad 1: Una meta de Sprint y una fecha para la demo. Esto es lo mínimo que se
necesita para comenzar un Sprint. El equipo tiene una meta y una fecha de finalización, y
organizar una nueva reunión de planificación de Sprint mañana mismo, pero si realmente se
necesita que el Sprint comience entonces probablemente se pueda hacer con esto.
59
Prioridad 5: Cálculos de velocidad y recursos, como chequeo de la planificación del Sprint.
Incluyendo una lista de los miembros del equipo y sus compromisos (de otra forma, no se
Prioridad 6: Un sitio y hora específicos para la realización del Scrum diario. Sólo se
necesita un momento para decidirlo, pero si se queda sin tiempo el Scrum Master puede
Prioridad 7: Historias divididas en tareas. Esta división puede sin embargo hacerse
diariamente durante los Scrum diarios, pero interferirá levemente el flujo del Sprint.
En esta cuarta fase, punto 4 de la figura N° 2.8, se habla acerca de la Revisión del
Sprint o también conocido como Demo de Sprint, que es una parte importante de
La revisión del Sprint, involucra la presencia del equipo Scrum, Scrum Master, Product
Owner con todas las personas implicadas en el proyecto. La duración máxima de esta
Una demo de Sprint bien ejecutada, aunque parezca poco espectacular, tiene un efecto muy
profundo:
60
• Las demos son (o deberían ser) un evento social donde diferentes equipos pueden
• Hacer una demo fuerza al equipo a acabar realmente las cosas y entregarlas (incluso
aunque sea sólo en entorno de pruebas). Sin las demos, se sigue consiguiendo
enormes montones de cosas terminadas al 99%. Con las demos puede que se
consigan menos cosas terminadas, pero estas están realmente terminadas, lo que es
mucho mejor que tener una enorme pila de cosas que están más o menos listas y que
gente sentirá un poco de pena por el equipo, algunos se enfadarán con ellos por
hacerles perder el tiempo con una demo pésima. Esto duele, pero el efecto es similar
al de una amarga medicina. En el próximo Sprint, el equipo intentará por todos los
medios tener cosas terminadas. El equipo sabe que tendrán que hacer una demo pase
lo que pase, lo que incrementa significativamente las posibilidades de que haya algo
demo que no saben nada sobre tu producto, tómate un par de minutos para
describirlo.
61
• Mantener el paso rápido, es decir, se debe concentrar la preparación en hacer que la
• Mantener la demo a nivel de negocio, dejar los detalles técnicos aparte. Se debe
misma.
trata con los asistentes y con el equipo las posibles modificaciones en el product backlog.
En esta quinta fase, punto 5 de la figura N° 2.8, lo más importante de una Retrospectiva de
Por alguna razón, los equipos no siempre parecen inclinados a hacer retrospectivas. Sin un
con el próximo Sprint. Pero, todo el mundo coincide en que las retrospectivas son
62
Por supuesto, no se necesita una reunión de retrospectiva para conseguir buenas ideas, pero
si la idea viene del equipo, es decir, surge durante la retrospectiva, entonces a todo el mundo
se le permite contribuir y discutir las ideas. Sin las retrospectivas se notará que el equipo
Para organizar las retrospectivas, el formato general varía un poco, pero normalmente se
• Se conducen a una reunión cerrada, un rincón cómodo con sofás, el patio del tejado o
algún sitio similar. Que se pueda tener una discusión sin interrupciones.
• El Scrum Master muestra la pila de Sprint y, con ayuda del equipo, resume el Sprint.
• Se hace “la ronda”. Cada persona tiene una oportunidad de decir, sin ser
interrumpida, qué piensan que ha ido bien, que podría haber ido mejor y que piensan
63
Las retrospectivas generalmente no están muy estructuradas. No obstante, el tema
• Bien: si se hiciera un Sprint otra vez, se volvería a hacer estas cosas igual.
• Mejorable: si se hiciera otra vez el Sprint, haríamos estas cosas de forma diferente.
Así que las columnas 1 y 2 son una mirada al pasado, mientras que la columna 3 mira al
futuro. Después de que el equipo genere todas estas ideas en post-its, utilizan “votación por
puntos” para determinar en qué mejoras centrarse el próximo Sprint. Cada miembro del
equipo tiene tres imanes y se les invita a votar sobre cualquier mejora en la que les gustaría
trabajar en el próximo Sprint. Cada miembro del equipo distribuye los imanes como quiera,
64
incluso colocando los tres en el mismo elemento. Basándose en esto, se selecciona cinco
cada Sprint.
Para Kazman (1996), la arquitectura de software alude a “la estructura general de este y a las
formas en las que esta da la integridad conceptual a un sistema” En su forma más sencilla, la
forma en la que estos interactúan y la estructura de datos que utilizan. Sin embargo, en un
sentido más amplio, los componentes se generalizan para que representen los elementos de un
Shaw y Garlan describen un conjunto de propiedades que deben especificarse como parte del
diseño de la arquitectura:
que están agrupados e interactúan unos con otros. Por ejemplo, los objetos se agrupan
para que encapsulen tanto datos como el procedimiento que los manipula e interactúen
invocando métodos.
sistema.
65
• Familias de sistemas relacionados. El diseño arquitectónico debe basarse en patrones
arquitectónica.
acoplamiento estrecho entre cada componente. Lo más importante, en esta arquitectura, los niños
no tienen la referencia directa al padre, solo tienen la referencia por observables (Microsoft,
https://docs.microsoft.com/en-us/archive/msdn-magazine/2010/july/design-patterns-problems-
66
• Modelo: Representa los datos y la lógica empresarial de la aplicación de Android.
repositorio.
Para obtener la respuesta, tiene que suscribirse a los observables que ViewModel le
expone.
idea de qué Vista tiene que usar, ya que no tiene una referencia directa a la Vista.
observar.
de datos;
fácil de soportar, sin mencionar su legibilidad. Cada módulo es responsable solo de una
función específica.
67
2.13 Patrón modelo vista controlador
Modelo Vista Controlador (MVC) es un patrón de arquitectura de software, que separa los datos
módulo encargado de gestionar los eventos y las comunicaciones. Para ello MVC propone la
construcción de tres componentes distintos que son el modelo, la vista y el controlador, es decir,
por un lado, define componentes para la representación de la información, y por otro lado para la
interacción del usuario. Este patrón de arquitectura de software se basa en las ideas de
lo tanto, gestiona todos los accesos a dicha información, tantas consultas como
68
descrito en las especificaciones de la aplicación (lógica de negocio). Envía a la vista
aquella parte de la información que en cada momento se le solicita para que sea
los diferentes registros de una base de datos), por tanto, se podría decir que el
69
2.14 Herramientas de desarrollo
programador para crear, depurar, gestionar o mantener un programa. Las herramientas que se
Herramienta C#
plataforma .NET.
70
Herramienta Java
generación.
memoria al sistema.
71
Herramienta Android Studio
relojes inteligentes.
72
• Renderizado de layouts en tiempo real, tiene la posibilidad de
usar parámetros.
gracias al emulador.
73
La mejora en las capacidades de Pruebas Unitarias permite
optimizar.
74
Herramienta Microsoft SQL Server
de datos.
Ventajas • Puede ser útil para manejar y/o obtener datos de la red de
redes.
Transact SQL.
75
• El Transact SQL, soporta la definición, modificación y
Tabla 2.6. Herramientas de desarrollo gestor de base de datos Microsoft SQL Server
Fuente: Elaboración propia
ISO 9126 es un estándar internacional para la evaluación del Software. Esta dividió en cuatro
partes las cuales dirigen, respectivamente el modelo de calidad, las métricas externas, métricas
internas y la calidad en las métricas de uso. Está siendo reemplazado por el conjunto de normas
SQuaRE, ISO 25000:2014, la cual desarrolla los mismos conceptos. Aun así, este estándar
continúa siendo el más utilizado. ISO 9126 distingue entre fallo y no conformidad. Un fallo es el
cumplimiento de los requisitos especificados. Una distinción similar es la que se establece entre
Marzo de 2020).
2.15.1 Características
características y subcaracterísticas.
conjunto de funciones y sus propiedades específicas. Las funciones son aquellas que
76
• Fiabilidad: Un conjunto de atributos relacionados con la capacidad del software de
establecido.
de usuarios.
establecidas.
El modelo original COCOMO (Constructive Cost Model) fue publicado por primera vez en
1981 por Barry Boehm y reflejaba las prácticas en desarrollo de software de ese entonces.
desarrollo software como en la creación del producto software, un giro total desde los
mainframes que trabajan con procesos batch nocturnos hacia los sistemas en tiempo real y
Los años y el avance tecnológico hicieron que la aplicación del modelo COCOMO original
Este nuevo y mejorado COCOMO resultará de gran ayuda para los estimadores
ecuación del esfuerzo para estimar el número de personas o de meses necesarios para
desarrollar el proyecto.
entornos estables.
restricciones intermedias.
• Modelo avanzado: Incluye todo lo del modelo intermedio además del impacto de
78
La función básica que utilizan los tres modelos es:
Modelo básico. Se utiliza para obtener una primera aproximación rápida del esfuerzo, y
hace uso de la siguiente tabla de constantes para calcular distintos aspectos de costes:
MODO a b c d
𝑀𝑀 = 𝑎 × (𝐾𝑙𝑏)
𝑇𝐷𝐸𝑉 = 𝑐 × (𝑀𝑀𝑑)
𝑴𝑴
𝑪𝒐𝒔𝒕𝒆𝑯 =
𝑻𝑫𝑬𝑽
79
• Costo total del proyecto
Se puede observar que a medida que aumenta la complejidad del proyecto (modo), las
constantes aumentan de 2.4 a 3.6, que corresponde a un incremento del esfuerzo del
personal. Hay que utilizar con mucho cuidado el modelo básico puesto que se obvian
Atributos. Cada atributo se cuantifica para un entorno de proyecto. La escala es muy bajo,
asigna un valor para usar de multiplicador en la fórmula (por ejemplo, si para un proyecto el
atributo DATA es calificado como muy alto, el resultado de la fórmula debe ser
Software
desde la sola inconveniencia de corregir un fallo (muy bajo) hasta la posible pérdida
• DATA: tamaño de la base de datos en relación con el tamaño del programa. El valor
código.
80
Hardware
Personal
Proyecto
Atributos Valor
Atributos de software
81
Complejidad 0,70 0,85 1,00 1,15 1,30 1,65
Atributos de hardware
ejecución
Atributos de personal
programación
software
desarrollo
82
2.16 Pruebas de Caja Blanca
Caja Blanca pretende investigar sobre la estructura interna del código, exceptuando detalles
referidos a datos de entrada o salida, para probar la lógica del programa desde el punto de vista
algorítmico. Realizan un seguimiento del código fuente según se va ejecutando los casos de
prueba, determinándose de manera concreta las instrucciones, bloques, etc. que han sido
En las pruebas de Caja Blanca se desarrollan casos de prueba que produzcan la ejecución de
cada posible ruta del programa o módulo, considerándose una ruta como una combinación
Hay que señalar que no todos los errores de software se pueden descubrir verificando todas las
rutas de un programa, hay errores que se descubren al integrar unidades del sistema y pueden
Camino: Un camino se puede definir como la ruta de secuencias que se siguen dentro del
código de fuente de un programa, un ejemplo es, desde la entrada de valores al sistema hasta
83
Camino Básico: Es una técnica de prueba de Caja Blanca que permite obtener una medida
de complejidad lógica para generar un conjunto básico de caminos que se ejecutan por lo
Grafo de Flujo asociado y se calcula su complejidad ciclomática. Por último, se diseñan los
un módulo “G”, por lo tanto, es el número mínimo de rutas que deben probarse”
Esta técnica ofrece una gran ventaja con respecto a las otras técnicas, ya que el número
mínimo requerido de pruebas se sabe por adelantado y por tanto el proceso de prueba se
84
2.16.2 Representación de un grafo de flujo
El grafo de flujo se utiliza para representar el flujo de control lógico de un programa. Este
• Nodos: Representan cero, una o varias sentencias en secuencia. Cada uno comprende
• Regiones: Áreas delimitadas por aristas y nodos. Cuando se contabilizan las regiones
La complejidad ciclomática es una métrica del software que proporciona una medida
del flujo de control del programa, el análisis desprende una medida cuantitativa de la
del método de prueba del camino básico, el valor calculado como complejidad ciclomática
define el número de pruebas que se deben realizar para asegurar que se ejecute cada
Un camino independiente es cualquier camino del programa que introduce, por lo menos, un
nuevo conjunto de sentencias de proceso o una condición, respecto a los caminos existentes.
En términos del diagrama de flujo, un camino independiente está constituido por lo menos
85
por una arista que no haya sido recorrida anteriormente a la definición del camino. En la
identificación de los distintos caminos de un programa para probar se debe tener en cuenta
que cada nuevo camino debe tener el mínimo número de sentencias nuevas o condiciones
nuevas respecto a los que ya existen. De esta manera se intenta que el proceso de depuración
El último paso es construir los casos de prueba que fuerzan la ejecución de cada camino.
86
CAPITULO III
MARCO APLICATIVO
87
3.1 Introducción
desarrollo que nos sugiere la metodología Scrum. En este capítulo se describirá el ámbito
Durante la fase de creación de la Backlog del producto (Pila de Producto) se capturarán los
requerimientos del usuario, los cuales serán ítems de la pila del producto. Si bien se obtendrá
el mayor número de requerimientos posible, la priorización de los mismos será realizada por
el Propietario del Producto, que en este caso será de el subgerente Lic. Giovanni Terrazas
Este módulo realiza la función de afilar o registrar un usuario o cuenta billetera, también
Inicio de sesión
Este módulo realiza la función de ingresar o iniciar sesión en la aplicación, de esta manera el
usuario podrá realizar las operaciones o transacciones financieras que el usuario necesite.
88
Recargas de crédito de telefónicas
Este módulo realiza la función de recargar de crédito a líneas telefónicas, de esta manera el
usuario podrá realizar recargas para realizar llamadas o comprar datos de internet.
El módulo realiza la función de transferir o enviar dinero a otras cuentas billeteras en la cual
El módulo realiza la función de transferir o enviar dinero a cuentas BCP en la cual el usuario
El módulo realiza la función de transferir o enviar dinero a cuentas BCP en la cual el usuario
El módulo realiza la función de transferir o enviar dinero a cuentas de otros bancos en la cual
el usuario podar ingresar el número de cuenta del beneficiario, nombre del beneficiario y el
monto deseado.
movimientos y estado de transacciones así mismo los códigos secretos para realizar los retiros
89
Pago de servicios
En este módulo se realizará la función de pagos de servicios para el pago de deudas o facturas
pendientes como por ejemplo VIVA, TIGO, ENTEL, EPSAS, YPFB y DELAPAZ.
El módulo se realizará la función de generar un código secreto para que el usuario pueda
efectuar el retiro de dinero mediante cajero o también puede realizar el código secreto para
realizar una compra en los comercios que cuenten con máquinas POS.
Estos módulos deben realizaran la función de cambiar y resetear el pin en caso de que el
usuario haya olvidado su pin y también para mantener segura la cuenta billetera.
El módulo debe realizara la función generar un código y enviarlo mediante sms para realizar
90
3.2.2 Historias identificadas
N° 1 Historia de usuario
Usuario/Autor Giovanni Terrazas Sprint 1
Área Soluciones de Negocio Prioridad 1
Programador Peter Alanoca Estimación 20
Nombre de la historia Afiliación de una cuenta Billetera
Descripción:
Como cliente quiero afiliarme o registrarme para tener una cuenta billetera
Criterio de aceptación:
Es necesario que se llenen los siguientes campos:
• Nombres
• Cedula de identidad
• Celular
• Correo
• PIN
Debe validarse el documento de identidad con el servicio de SEGIP
Debe validarse el celular mediante sms
Debe validarse que el pin y comfirmarse confirme una segunda ves
Tabla 3.1. Historia de usuario afiliación de una cuenta Billetera
Fuente: Elaboración propia
Inicio de sesión
N° 2 Historia de usuario
Usuario/Autor Giovanni Terrazas Sprint 1
Área Soluciones de Negocio Prioridad 2
Programador Edson Mamani Estimación 20
Nombre de la historia Inicio de sesión
Descripción:
Como cliente quiero iniciar sesión para tener acceder a la aplicación con mi cuenta
billetera
Criterio de aceptación:
Es necesario que se llenen los siguientes campos:
• Celular
• PIN
Debe validarse las credenciales con el servicio web interno de la institución.
Tienen que tener visibles la opción de olvido de pin, afiliación y deposito para no
clientes.
Tabla 3.2. Historia de usuario inicio de sesión
Fuente: Elaboración propia
91
Opción de Inicio o bienvenida
N° 3 Historia de usuario
Usuario/Autor Giovanni Terrazas Sprint 2
Área Soluciones de Negocio Prioridad 1
Programador Peter Alanoca Estimación 10
Nombre de la historia Opción de inicio o bienvenida
Descripción:
Como cliente quiero que la opción inicio me muestre mi saldo y las ultimas
transacciones, también que me de accesos a otras opciones como por ejemplo
transferencias para tener la información de mi cuenta al momento de iniciar sesión.
Validación:
Debe mostrarse la siguiente información:
• Saldo
• Ultimas transacciones.
Debe tener acceso a las siguientes opciones:
• Transferencias
• Recarga de crédito.
N° 4 Historia de usuario
Usuario/Autor Giovanni Terrazas Sprint 2
Área Soluciones de Negocio Prioridad 2
Programadores Peter Alanoca Estimación 10
Edson Mamani
Nombre de la historia Recargas de crédito de telefónicas
Descripción:
Como cliente necesito recargar crédito a mi línea telefónica para realizar llamadas o
compras datos de internet.
Criterio de aceptación:
Debe estar muy visible o distinguirse la empresa telefónica a escoger.
Se debe de tener algunos montos predefinidos.
Deben validarse tanto los campos:
• Número de celular
• Monto
92
Transferencias entre cuentas billetera
N° 5 Historia de usuario
Usuario/Autor Giovanni Terrazas Sprint 2
Área Soluciones de Negocio Prioridad 3
Programador Edson Mamani Estimación 10
Nombre de la historia Transferencias entre cuentas billetera
Descripción:
Como cliente quiero transferir dinero a otras billeteras para pagar o enviar dinero a
otra cuenta billetera.
Criterio de aceptación:
Deben validarse tanto los campos:
• Número de cuenta
• Monto
Debe validarse el pin internamente.
N° 6 Historia de usuario
Usuario/Autor Giovanni Terrazas Sprint 3
Área Soluciones de Negocio Prioridad 1
Programador Peter Alanoca Estimación 20
Nombre de la historia Transferencias a cuentas BCP
Descripción:
Como cliente quiero transferir dinero a cuentas BCP para pagar o enviar dinero a
cuentas BCP.
Criterio de aceptación:
Deben validarse tanto los campos:
• Número de cuenta
• Monto
Debe validarse el pin internamente.
93
Transferencias a cuentas de otros bancos
N° 7 Historia de usuario
Usuario/Autor Giovanni Terrazas Sprint 3
Área Soluciones de Negocio Prioridad 2
Programador Edson Mamani Estimación 20
Nombre de la historia Transferencias a cuentas de otros bancos
Descripción:
Como cliente quiero transferir dinero a cuentas de otros bancos para pagar o enviar
dinero a cuentas de otros bancos.
Criterio de aceptación:
Deben validarse tanto los campos:
• Número de cuenta
• Nombre del beneficiario
• Banco destino
• Monto
Debe validarse el pin internamente.
La confirmación de la transferencia será en segundo plano y se podrá ver el estado en
la opción de estados de transferencias.
N° 8 Historia de usuario
Usuario/Autor Giovanni Terrazas Sprint 4
Área Soluciones de Negocio Prioridad 1
Programador Peter Alanoca Estimación 20
Nombre de la historia Estados de transferencias y movimientos
Descripción:
Como cliente quiero consultar mis movimientos, códigos de retiro y estado de
transferencias para tener la información financiera actualizada.
Criterio de aceptación:
Deben mostrarse la siguiente información:
• Saldo
• Ultimas 20 transacciones o movimientos
Los movimientos deben estar ordenada por fecha de forma descendiente.
94
Pago de servicios
N° 9 Historia de usuario
Usuario/Autor Giovanni Terrazas Sprint 4
Área Soluciones de Negocio Prioridad 2
Programador Edson Mamani Estimación 20
Nombre de la historia Pago de servicios
Criterio de aceptación:
Como cliente quiero pagar mis deudas o facturas pendientes de servicios básicos o
telefónicas para que no se realice el corte de los servicios que se consume.
Validación:
Deben validarse los campos:
• Código de servicio
• Monto
• Empresa
Las empresas deben estar categorizadas por rubro.
Debe validarse el pin internamente.
N° 10 Historia de usuario
Usuario/Autor Giovanni Terrazas Sprint 5
Área Soluciones de Negocio Prioridad 1
Programador Peter Alanoca Estimación 10
Nombre de la historia Retiro en cajeros automáticos y compra en comercios
Criterio de aceptación:
Como cliente quiero realizar retiros en cajeros automáticos y comprar en comercios
para poder disponer del dinero de manera física.
Validación:
Debe mostrarse el código secreto para realizar el retiro.
El código secreto deberá tener un tiempo de vida de 30 minutos máximo, la validación
lo hará el servicio web que genera los códigos.
El código debe estar visible en la opción de estados o transferencias.
Debe validarse el pin internamente.
95
Cambio y reseteo de PIN
N° 11 Historia de usuario
Usuario/Autor Giovanni Terrazas Sprint 5
Área Soluciones de Negocio Prioridad 2
Programadores Peter Alanoca Estimación 10
Edson Mamani
Nombre de la historia Cambio y reseteo de PIN
Descripción:
Como cliente quiero cambiar o resetear mi pin para mantener segura mi cuenta,
también tener un pin nuevo en caso de olvido.
Criterio de aceptación:
Deben validarse los campos:
• Número de cuenta
• Pin nuevo
• Pin actual
En el caso de reseteo de pin se tendrá que llamar a banca por teléfono para solicitar un
código realizar el reseteo.
N° 12 Historia de usuario
Usuario/Autor Giovanni Terrazas Sprint 5
Área Soluciones de Negocio Prioridad 3
Programador Edson Mamani Estimación 10
Nombre de la historia Depósitos en cajeros automáticos para no clientes
Descripción:
Como cliente quiero realizar depósitos en cajeros automáticos para no clientes para
depositar dinero a cuentas BCP.
Criterio de aceptación:
Deben validarse los campos:
• Número de cuenta
• Nombre del beneficiario
• Celular
• Cedula de identidad
• Origen y destino de fondos
Se envía un código sms para realizar el depósito.
Tabla 3.12. Historia de usuario depósitos en cajeros automáticos para no clientes
Fuente: Elaboración propia
96
3.3 FASE 2: Planificación del Sprint
La primera reunión de planificación de Sprints, permitirá que el equipo Scrum estructure los
Sprints necesarios, además que realice todas las estimaciones iniciales y que verifique las
97
5 Transferencias 40 10 Llenar todos los datos y
entre cuentas presionar el botón
billetera Enviar pago
6 Transferencias a 40 20 Llenar todos los datos y
cuentas BCP presionar el botón
Enviar pago
7 Transferencias a 40 20 Llenar todos los datos y
cuentas de otros presionar el botón
bancos Enviar pago
8 Estados de 60 20 Seleccionar la opción de
transferencias y Consultas
movimientos
9 Pago de servicios 80 20 Seleccionar la opción de
Servicios, seleccionar
una empresa llenar todos
los datos y presionar el
botón Pagar
10 Retiro en cajeros 70 10 Seleccionar la opción de
automáticos y Contraseña y presionar
compra el botón Generar
11 Cambio y reseteo 40 10 Seleccionar la opción de
de PIN Cambio de Pin, llenar
todos los datos y
presionar el botón
Cambiar
12 Depósitos en 40 10 Seleccionar la opción de
cajeros Deposito, llenar todos
automáticos para los datos y presionar el
no clientes botón Depositar
Tabla 3.14. Product Backlog
Fuente: Elaboración propia
98
3.3.1 Primera reunión de planificación de Sprint (SPRINT 1)
Lugar: Banco de Crédito calle Colón esquina Mercado. - Piso 3 Sala “8”
• 9:00 – 9:30. El dueño de producto comenta la meta del Sprint y resume la Pila de
b) Inicio de sesión
las ratios de importancia. Se clarifican los elementos. Para todos los elementos de alta
El Sprint Planning es una reunión crítica, probablemente el evento más importante en Scrum,
ya que una reunión de planificación mal ejecutada puede llevar a incumplir un Sprint entero.
para ser capaz de trabajar en paz por cuatro semanas, y proporcionarle al dueño de producto
99
ser el caso. Los desarrolladores Peter Alanoca y Edson Mamani estarán en el proyecto
enfocados 80 días (640 horas laborales) y líder del equipo Scrum será Peter Alanoca,
Lo cual da un total de 640 horas disponibles para el proyecto. Esta estimación se ve reflejada
La tabla N° 3.16 muestra los cinco Sprints backlogs definidos en la primera reunión de
planificación de Sprints.
100
aplicaciones móviles
320
Sprint Responsable Tareas Horas
SPRINT 2 Peter Alanoca Creación de tablas y procedimientos almacenados 32
Creación del endpoint de inicio 32
Creación de los endpoints de recargas 40
Consumir los de recargas 16
Creación de los endpoints de transferencias entre 40
cuentas billetera
Edson Mamani Creación de la interfaz de la opción en las 40
aplicaciones móviles
Creación de la interfaz de recargas en las 60
aplicaciones móviles
Creación de la interfaz de transferencias entre 60
cuentas billetera en las aplicaciones móviles
320
Sprint Responsable Tareas Horas
SPRINT 3 Peter Alanoca Creación de tablas y procedimientos almacenados 40
Creación de los endpoints de transferencias a 40
cuenta BCP
Consumir el servicio de abonos a cuentas BCP 40
Creación de los endpoints de transferencias a 40
cuentas de otros bancos
Edson Mamani Consumir el servicio de abonos a cuentas de otros 60
bancos
Creación de la interfaz de transferencias a cuentas 60
BCP en las aplicaciones móviles
Creación de la interfaz de transferencias a de otros 60
bancos en las aplicaciones móviles
320
Sprint Responsable Tareas Horas
SPRINT 4 Peter Alanoca Creación de tablas y procedimientos almacenados 40
Creación del endpoint de movimientos 40
Creación del endpoint de estado de transferencias 44
Consumir el servicio de código secreto para retiro 36
Edson Mamani Creación de los endpoints de pago de servicios 40
Consumir el servicio de pago de servicios 32
Creación de la interfaz de movimientos y 32
estados de transferencias
Creación de la interfaz de pagos de servicios en las 56
aplicaciones móviles
320
Sprint Responsable Tareas Horas
SPRINT 5 Peter Alanoca Creación de tablas y procedimientos almacenados 32
Creación del endpoint de código secreto para retiro 32
Consumir el servicio de código secreto para retiro 16
101
Creación del endpoint de cambio de pin 16
Creación del endpoint de reseteo de pin 32
Creación del endpoint de depósito para no clientes 32
Edson Mamani Consumir el servicio de depósito para no clientes 24
Creación de la interfaz de retiros en cajeros en las 32
aplicaciones móviles
Creación de la interfaz de cambio de pin 32
Creación de la interfaz de reseteo de pin 32
Creación de la interfaz de depósitos para no 40
clientes
320
Tabla 3.16. Sprints backlog definidos en la primera reunión de planificación
Fuente: Elaboración propia
La tabla N° 3.16 contiene el responsable por cada tarea de cada Sprint, que fue producto de
la primera reunión de planificación de Sprints. Donde todos los Sprints tienen la duración de
TOTAL 40 320
Para el proyecto, considerando que el factor de dedicación para este primer Sprint es igual a:
Fdedicación = 10/10 = 1. Entonces, la velocidad estimada será igual a: Vestimada = 10x1 = 10.
Lugar: Banco de Crédito calle Colón esquina Mercado. - Piso 3 Sala “8”
102
Próxima reunión: Martes 16/04/2019
• 9:00 – 9:30. El equipo Scrum proporciona al dueño del producto los entregables de
• 9:30 – 10:00. El dueño de producto verifica las metas de Sprint y valida si es lo que
• 10:00 – 10:30. El dueño de producto establece las metas del Sprint para el siguiente
Sprint. Se establece el lugar, fecha y hora para la revisión del Sprint. El equipo
a) Opción de Inicio
• 10:30 – 11:00. Se selecciona un lugar y hora para el Scrum Diario. El equipo Scrum
103
Para el proyecto, considerando que el factor de dedicación para este primer Sprint es igual a:
Fdedicación = 10/10 = 1. Entonces, la velocidad estimada será igual a: Vestimada = 10x1 = 10.
Lugar: Banco de Crédito calle Colón esquina Mercado. - Piso 3 Sala “8”
• 9:00 – 9:30. El equipo Scrum proporciona al dueño del producto los entregables de
• 9:30 – 10:00. El dueño de producto verifica las metas de Sprint y valida si es lo que
• 10:00 – 10:30. El dueño de producto establece las metas del Sprint para el siguiente
Sprint. Se establece el lugar, fecha y hora para la revisión del Sprint. El equipo
• 10:30 – 11:00. Se selecciona un lugar y hora para el Scrum Diario. El equipo Scrum
104
Desarrollador Días disponibles Horas disponibles
TOTAL 40 320
Para el proyecto, considerando que el factor de dedicación para este primer Sprint es igual a:
Fdedicación = 10/10 = 1. Entonces, la velocidad estimada será igual a: Vestimada = 10x1 = 10.
Lugar: Banco de Crédito calle Colón esquina Mercado. - Piso 3 Sala “8”
• 9:00 – 9:30. El equipo Scrum proporciona al dueño del producto los entregables de
• 9:30 – 10:00. El dueño de producto verifica las metas de Sprint y valida si es lo que
• 10:00 – 10:30. El dueño de producto establece las metas del Sprint para el siguiente
Sprint. Se establece el lugar, fecha y hora para la revisión del Sprint. El equipo
105
b) Pago de servicios
• 10:30 – 11:00. Se selecciona un lugar y hora para el Scrum Diario. El equipo Scrum
TOTAL 40 320
Para el proyecto, considerando que el factor de dedicación para este primer Sprint es igual a:
Fdedicación = 10/10 = 1. Entonces, la velocidad estimada será igual a: Vestimada = 10x1 = 10.
Lugar: Banco de Crédito calle Colón esquina Mercado. - Piso 3 Sala “8”
• 9:00 – 9:30. El equipo Scrum proporciona al dueño del producto los entregables de
• 9:30 – 10:00. El dueño de producto verifica las metas de Sprint y valida si es lo que
106
• 10:00 – 10:30. El dueño de producto establece las metas del Sprint para el siguiente
Sprint. Se establece el lugar, fecha y hora para la revisión del Sprint. El equipo
• 10:30 – 11:00. Se selecciona un lugar y hora para el Scrum Diario. El equipo Scrum
TOTAL 40 320
Para el proyecto, considerando que el factor de dedicación para este primer Sprint es igual a:
Fdedicación = 10/10 = 1. Entonces, la velocidad estimada será igual a: Vestimada = 10x1 = 10.
Para poder comunicar el avance de cada uno de los cinco Sprints backlogs, se realizan los
scrum diarios o reuniones diarias, en donde participan el Scrum Master y el Equipo Scrum
principalmente para verificar y evaluar el avance realizado por los responsables de las tareas
107
asignadas. La finalidad de ello es que ninguna tarea sea un cuello de botella que impida la
Sobre una gran pizarra, y con la ayuda de post-its y plumones, se construyó la tabla de tareas
para el proyecto y se comunicaron los avances de los Sprints backlogs (Sprint 1, Sprint 2,
tareas que se vienen realizando para ver el comportamiento del gráfico burndown a lo largo
108
Del gráfico de la página siguiente, se observa que es importante la comunicación de las
tareas que se vienen realizando para ver el comportamiento del gráfico burndown a lo largo
La figura N° 3.2 muestra el cuadro burndown o gráfica de progreso para el Sprint backlog 1,
decrecimiento, ello debido a las reuniones diarias que permiten la evaluación de avances y la
109
minimización de retrasos. De esta manera se va culminando el Sprint 1 hasta pasar al
siguiente Sprint.
La figura N° 3.3 muestra el cuadro burndown o gráfica de progreso para el Sprint backlog 2,
decrecimiento.
La figura N° 3.4 muestra el cuadro burndown o gráfica de progreso para el Sprint backlog 3,
110
Figura 3.4. Diagrama burndown para el Sprint backlog 3
Fuente: Elaboración propia
decrecimiento, ello debido a las reuniones diarias que permiten la evaluación de avances y la
siguiente Sprint.
La figura N° 3.5 muestra el cuadro burndown o gráfica de progreso para el Sprint backlog 4,
111
Figura 3.5. Diagrama burndown para el Sprint backlog 4
Fuente: Elaboración propia
decrecimiento, ello debido a las reuniones diarias que permiten la evaluación de avances y la
siguiente Sprint.
La figura N° 3.6 muestra el cuadro burndown o gráfica de progreso para el Sprint backlog 5,
112
Figura 3.6. Diagrama burndown para el Sprint backlog 5
Fuente: Elaboración propia
decrecimiento.
Planificación de Sprints.
113
3.5.2 Sprint 1
• Inicio de sesión
La primera meta del Sprint 1, realizar el análisis y diseño del proyecto fue concluida en
producto del modelamiento de datos inicial, realizado en Microsoft SQL Server 2012
R2
114
Figura 3.8. Diagrama de base de datos nivel transaccional e historial
Fuente: Elaboración propia
115
Figura 3.9. Diagrama de base de datos nivel cliente
Fuente: Elaboración propia
116
La figura N° 3.11 muestra los endpoints del inicio de sesión y la afiliación o registro,
Figura 3.12. Captura de pantalla del inicio de sesión en el emulador de Android Studio
Fuente: Elaboración propia
117
La figura N° 3.13 muestra las pantallas del registro o afiliación, realizado en Android
Studio.
3.5.3 Sprint 2
118
Figura 3.14. Captura de endpoints de recargas y transferencias en Visual Studio
Fuente: Elaboración propia
119
La figura N° 3.16 muestra las pantallas de recargas, realizado en Android Studio.
3.5.4 Sprint 3
120
Figura 3.17. Captura de endpoints de transferencias a cuentas BCP en Visual Studio
Fuente: Elaboración propia
Android Studio.
Figura 3.18. Captura de pantalla de transferencias a cuentas BCP en el emulador de Android Studio
Fuente: Elaboración propia
121
La figura N° 3.19 muestra las pantallas de transferencias a otros bancos, realizado en
Android Studio.
3.5.5 Sprint 4
• Pago de servicios
122
Figura 3.20. Captura de endpoints de movimientos y pago de servicios en Visual Studio
Fuente: Elaboración propia
123
La figura N° 3.22 muestra las pantallas de pago de servicios, realizado en Android
Studio.
124
3.5.6 Sprint 5
La figura N° 3.23 muestra los endpoints retiros, cambio, reseteo de pin y depositos,
125
La figura N° 3.24 muestra el cambio de pin, realizado en Android Studio.
La figura N° 3.25 muestra las pantallas de reseteo de pin, realizado en Android Studio.
126
La figura N° 3.26 muestra las pantallas de depósito, realizado en Android Studio.
127
3.6 FASE 5: Retrospectiva del Sprint
En esta etapa se debe realizar la retrospectiva de cada uno de los tres Sprints definidos en la
fase de planificación de Sprints, siempre y cuando el cliente y/o dueño de producto establezca
que el entregable proporcionado por el equipo Scrum no es lo que se solicitó al inicio del
proyecto.
En el presente estudio las retrospectivas para los Sprint 1, Sprint 2, Sprint 3, Sprint 4 y Sprint
5, fueron satisfactorias.
Finalmente, la tabla N° 3.22 muestra el estado final de los ítems del product backlog.
128
los datos y presionar
el botón Pagar
10 Retiro en cajeros 70 10 Seleccionar la opción REALIZADO
automáticos y de Contraseña y
compra en presionar el botón
comercios Generar
11 Cambio y reseteo 40 10 Seleccionar la opción REALIZADO
de PIN de Cambio de Pin,
llenar todos los datos
y presionar el botón
Cambiar
12 Depósitos en 40 10 Seleccionar la opción REALIZADO
cajeros de Deposito, llenar
automáticos para todos los datos y
no clientes presionar el botón
Depositar
Tabla 3.22. Estado final de las tareas del Product Backlog del proyecto
Fuente: Elaboración propia
La tabla refleja que la aplicación correcta de Scrum, permitió culminar cada historia de
Una vez levantadas cada una de las observaciones realizadas por el dueño del producto a los
entregables desarrollados por el equipo Scrum, se procede a realizar el cierre del proyecto.
Tarea que generalmente le corresponde al Scrum Master en coordinación con el dueño del
producto.
Sprint.
129
Consumir el servicio de autenticación interno OK Done
Creación de la interfaz del registro en las OK Done
aplicaciones móviles
Creación de la interfaz del login en las OK Done
aplicaciones móviles
SPRINT 2 Peter Alanoca Creación de tablas y procedimientos almacenados OK Done
Creación del endpoint de inicio OK Done
Creación de los endpoints de recargas OK Done
Consumir los de recargas OK Done
Creación de los endpoints de transferencias entre OK Done
cuentas billetera
Edson Mamani Creación de la interfaz de la opción en las OK Done
aplicaciones móviles
Creación de la interfaz de recargas en las OK Done
aplicaciones móviles
Creación de la interfaz de transferencias entre OK Done
cuentas billetera en las aplicaciones móviles
SPRINT 3 Peter Alanoca Creación de tablas y procedimientos almacenados OK Done
Creación de los endpoints de transferencias a OK Done
cuenta BCP
Consumir el servicio de abonos a cuentas BCP OK Done
Creación de los endpoints de transferencias a OK Done
cuentas de otros bancos
Edson Mamani Consumir el servicio de abonos a cuentas de otros OK Done
bancos
Creación de la interfaz de transferencias a cuentas OK Done
BCP en las aplicaciones móviles
Creación de la interfaz de transferencias a de otros bancos
OK Done
en las aplicaciones móviles
SPRINT 4 Peter Alanoca Creación de tablas y procedimientos almacenados OK Done
Creación del endpoint de movimientos OK Done
Creación del endpoint de estado de transferencias OK Done
Consumir el servicio de código secreto para retiro OK Done
Edson Mamani Creación de los endpoints de pago de servicios OK Done
Consumir el servicio de pago de servicios OK Done
Creación de la interfaz de movimientos y estados OK Done
de transferencias
Creación de la interfaz de pagos de servicios en las OK Done
aplicaciones móviles
SPRINT 5 Peter Alanoca Creación de tablas y procedimientos almacenados OK Done
Creación del endpoint de código secreto para retiro OK Done
Consumir el servicio de código secreto para retiro OK Done
Creación del endpoint de cambio de pin OK Done
Creación del endpoint de reseteo de pin OK Done
Creación del endpoint de depósito para no clientes OK Done
Edson Mamani Consumir el servicio de depósito para no clientes OK Done
Creación de la interfaz de retiros en cajeros en las OK Done
aplicaciones móviles
Creación de la interfaz de cambio de pin OK Done
Creación de la interfaz de reseteo de pin OK Done
130
Creación de la interfaz de depósitos para no clientesOK Done
Tabla 3.23. Cierre del proyecto con Scrum
Fuente: Elaboración propia
La tabla muestra el estado actual de las tareas asignadas a los responsables, las cuales tienen
establecidos en el modelo aplicativo. Se aplicó cada una de las fases, partiendo por la
primera denominada Definición del backlog del producto, siguiendo por la Planificación del
Sprint, después el Scrum diario, continuando con la Revisión del Sprint y finalmente
realizando la Retrospectiva del Sprint. Todo este proceso culmina con la producción de un
incremento operativo del software verificado y validado por el cliente, obteniéndose una
Se tratará de encontrar todo posible error durante un proceso antes que se entre en
Esta prueba se aplica en los procesos más relevantes del modelo de pronóstico de
camino básico con grafos, complejidad ciclo matica y derivación de casos de prueba.
alternativas:
131
fuente.
V(G) = A – N + 2, donde:
A: Es el número de aristas
N: es el número de nodos.
Figura 3.27. Captura de pantalla del código fuente de inicio de sesión en Android Studio
Fuente: Elaboración propia
132
Figura 3.28. Grafo de pruebas de caja blanca inicio de sesión
Fuente: Elaboración propia
variables:
A=8
N=7
𝑉(𝐺) = 8 – 7 + 2 = 3
𝑉(𝐺) = 3
133
Casos de prueba
134
CAPITULO IV
CALIDAD Y SEGURIDAD
135
4.1 Calidad
En esta etapa se aplicará la calidad de software ISO 9126, mismo que propone una jerarquía
de atributos de calidad como la de un producto o servicio para satisfacer las necesidades del
usuario, que siempre buscará esta cualidad en todos los productos, no solamente de equipos
El estándar ISO-9126 establece que cualquier componente de la calidad del software puede
ser descrito en términos de una o más de seis características básicas, las cuales son:
4.1.1 Usabilidad
para usar el sistema, en base a su comprensión y estructura lógica que el sistema tiene.
Esta comprensión por parte de los usuarios con relación al sistema evalúa los siguientes
casos:
• Comprensibilidad
• Facilidad de Aprender
• Operabilidad
136
Preguntas Respuestas Porcentaje %
SI NO
¿El acceso al sistema es complicado? 0 10 100%
¿Son compresibles las respuestas del sistema? 1 9 90%
¿Son complicadas los procesos que realiza el sistema? 10 0 100%
¿El sistema tiene interfaces entendibles? 9 1 90%
¿La interfaz del sistema es agradable a la vista? 10 0 100%
¿Son satisfactorias las respuestas que el sistema 8 2 80%
devuelve?
¿El sistema reduce su tiempo de trabajo? 9 1 90%
¿Es difícil aprender a manejar el sistema? 1 9 90%
¿El sistema satisface las necesidades que usted 9 1 90%
requiere?
¿Utiliza el sistema con facilidad? 9 1 90%
PROMEDIO 92%
Tabla 4.1. Encuesta de Usabilidad del Sistema
Fuente: Elaboración propia
4.1.2 Mantenibilidad
(basado en los cambios que ocurren con cada versión del producto).
𝑀𝑡 − (𝐹𝑐 + 𝐹𝑎 + 𝐹𝐸)
𝐼𝑀𝑆 =
𝑀𝑡
Donde:
137
12 − (1 + 0 + 0)
𝐼𝑀𝑆 =
12
𝐼𝑀𝑆 = 91.6%
corto plazo.
4.1.3 Funcionalidad
138
• Número de peticiones de usuario. Una petición se define como una entrada
grupo lógico de datos que puede ser parte de una gran base de datos o un archivo
independiente).
maquina (por ejemplo: archivos de datos de disco) que se utilizan para transmitir
Número de archivos 1
Los puntos fusión se calculan con la ayuda de la tabla 4.2 considerando los factores de
ponderación medio.
139
Número de salidas de usuario 2 8 16
Número de archivos 1 10 10
CUENTA TOTAL 54
Donde:
PF = Medida de Confiabilidad
error es del 1%
F = Son los valores de ajuste de complejidad que toman los valores de la tabla 4.4
140
SIN IMPORTANCIA
SIGNIFICATIVO
INCREMENTAL
MODERADO
IMPORTANCIA
ESENCIAL
MEDIO
VALORACION 0 1 2 3 4 5
1.- ¿Requiere el sistema copias de seguridad y es de fácil X
recuperación?
2.- ¿Se requiere comunicación de datos? X
3. ¿Existe funciones de procesos distribuidos? X
4. ¿Es critico el rendimiento? X
5.- ¿El sistema web será ejecutado en un X
sistema operativo actual?
6.- ¿Se requiere una entrada interactiva para el sistema? X
7.- ¿Se requiere que el sistema tenga entradas a datos X
con múltiples ventanas?
8.- ¿Se actualiza los archivos de forma interactiva? X
9.- ¿Son complejas las entradas, salidas, los archivos o X
las peticiones?
10.- ¿Es complejo el procesamiento interno del sistema? X
11.- ¿se ha diseñado el código para ser reutilizado? X
12.- ¿Se ha diseñado el sistema para facilitar al usuario el X
trabajo?
Cuenta Total ∑(𝑓𝑖) = 45
Tabla 4.4. Ajuste del factor de complejidad
Fuente: Elaboración propia
Hallamos el punto de valor máximo para comparar los valores del sistema.
𝑃𝐹 = 73,44
El punto función ideal al 100 % de los factores en la ecuación tiene el valor de 48, a
141
𝑃𝐹 = 54 ∗ (0.91 + 0,01 × 48)
𝑃𝐹 = 75,06
Con ambos resultados se calcula el porcentaje de funcionalidad del sistema:
𝑃𝐹 𝑜𝑏𝑡𝑒𝑛𝑖𝑑𝑎
𝑃𝐹 𝑟𝑒𝑎𝑙 = × 100
𝑃𝐹 𝑖𝑑𝑒𝑎𝑙
48,96
𝑃𝐹 𝑟𝑒𝑎𝑙 = × 100
50,04
𝑃𝐹 𝑟𝑒𝑎𝑙 = 97,84%
El resultado obtenido muestra que el sistema tiene una funcionalidad o utilidad del
97,84% para la organización, lo que indica que él es sistema cumple con los requisitos
4.1.4 Confiabilidad
siguiente.
142
𝜆 = 0.01 (es decir 1 error en cada 6 ejecuciones)
𝑡 = 6 𝑚𝑒𝑠𝑒𝑠
1
𝐹(12) = 97,84 × e− 6 ×12
𝐹(12) = 13,24%
4.1.5 Portabilidad
determinado.
a portabilidad.
Nivel de Hardware
• Tamaño pantalla
143
Tablet: 10.1" (255.8mm)
• Velocidad CPU
• Conexión
Nivel de Software
• Versión Android
4.1.6 Resultados
El factor de calidad total está directamente relacionado con el grado de satisfacción con
Características Resultado
Usabilidad 92%
Funcionalidad 97,84%
Mantenibilidad 91,6%
Confiabilidad 86.76%
Evaluación Total de Calidad 92.05%
Tabla 4.5. Resultado de Evaluación de Calidad
Fuente: Elaboración propia
144
4.2 Seguridad
más importante.
antecesor Secure Sockets Layer (SSL; en español capa de puertos seguros) son
comúnmente Internet.
contraparte con quien se están comunicando, y para intercambiar una llave simétrica.
Esta sesión es luego usada para cifrar el flujo de datos entre las partes. Esto permite la
y como un producto lateral, autenticación del mensaje. Varias versiones del protocolo
importante en este contexto es forward secrecy, para que la clave de corta vida de la
sesión no pueda ser descubierta a partir de la clave asimétrica de largo plazo (Wikipedia,
https://es.wikipedia.org/wiki/Seguridad_de_la_capa_de_transporte).
Por lo tanto, para el proyecto se decidió usar TLS 1.2 por su robustez en los algoritmos
145
de encriptación y validación de certificados.
En un caso de uso de SSL típico, el servidor se configura con un certificado que contiene
una clave pública y una privada coincidente. Como parte del protocolo de enlace entre
un servidor y un cliente SSL, el servidor confirma que tiene la clave privada mediante la
que un protocolo de enlace simple no comprueba respecto del servidor más que el hecho
de que este último reconoce la clave privada que coincide con la clave pública del
certificado. Una manera de resolver este problema es exigir que el cliente tenga un
Este enfoque simple tiene varias desventajas. Los servidores deberían poder actualizar a
claves más seguras con el tiempo ("rotación de claves"), que reemplacen la clave pública
en el certificado por una nueva. Lamentablemente, ahora se debe actualizar la app cliente
resulta problemático si el servidor no está bajo el control del desarrollador de la app; por
https://developer.android.com/training/articles/security-ssl).
146
4.2.3 Ofuscación del código
para que, aunque realice la misma función, sea más difícil su comprensión. En
inversa.
Para que tu app sea lo más pequeña posible, debes habilitar la reducción en tu
Cuando habilitas esta opción, también te beneficias de la ofuscación, que acorta los
nombres de las clases y los miembros de tu app, y la optimización, que aplica estrategias
más agresivas a fin de reducir aún más el tamaño de tu app. En esta página, se describe
code).
bases de datos sólo los privilegios requeridos para acceder a los objetos de la base de
es/dotnet/framework/data/adonet/sql/authorization-and-permissions-in-sql-server).
privilegios mínimos (LUA) constituye una parte importante de una estrategia de defensa
147
exhaustiva contra las amenazas a la seguridad. El enfoque LUA garantiza que los
usuarios siguen el principio de los privilegios mínimos y siempre inician sesión con
cuentas de usuario limitadas. Las tareas administrativas se realizan utilizando roles fijos
del servidor y el uso del rol fijo del servidor sysadmin es muy restringido.
Cuando conceda permisos a usuarios de base de datos, siga siempre el principio de los
privilegios mínimos. Otorgue a usuarios y roles los mínimos permisos necesarios para
seguridad. Los conjuntos de permisos asignados a roles los heredan todos los miembros
del rol. Es más fácil agregar o quitar usuarios de un rol que volver a crear conjuntos de
permisos distintos para cada usuario. Los roles se pueden anidar. Sin embargo, la
puede agregar usuarios a roles fijos de bases de datos para simplificar los permisos de
asignación.
los permisos en todos los objetos nuevos creados en el esquema; no es necesario otorgar
148
CAPITULO V
ANALISIS DE COSTOS
149
5.1 Cálculo de costos
algorítmico de aproximación COCOMO II, orientado a los puntos de función ajustados. Para
Cálculo de esfuerzo
𝐿𝐷𝐹
𝐿𝐷𝐶 = 𝑃𝐹𝐴 × (factor )
𝑃𝐹
Donde:
Lenguajes OO 19
C++ 53
JavaScript 47
150
Utilizamos el factor para el lenguaje orientado a objetos y reemplazamos los valores.
𝐿𝐷𝐶 = 73,44 × 53
𝐿𝐷𝐶 = 3892,32
3892,32
𝐾𝐿𝐷𝐶 =
1000
𝐾𝐿𝐷𝐶 = 3,89
Así pues, en nuestro caso el tipo orgánico será el más apropiado ya que el número de líneas
Proyecto Software a e c d
Organico 3.2 1,05 2,5 0,38
VALORACIÓN
CONDUCTORES DE COSTE
Muy Baj Nomi Muy Extra
bajo Alto alto alto
o nal
Fiabilidad requerida del software 0,75 0,88 1,00 1,15 1,40 -
Tamaño de la base de datos - 0,94 1,00 1,08 1,16 -
Complejidad del producto 0,70 0,85 1,00 1,15 1,30 1,65
Restricciones del tiempo de ejecución - - 1,00 1,11 1,30 1,66
Restricciones del almacenamiento
- - 1,00 1,06 1,21 1,56
principal
Volatilidad de la máquina virtual - 0,87 1,00 1,15 1,30 -
151
Tiempo de respuesta del ordenador - 0,87 1,00 1,07 1,15 -
Capacidad del analista 1,46 1,19 1,00 0,86 0,71 -
Experiencia en la aplicación 1,29 1,13 1,00 0,91 0,82 -
Capacidad de los programadores 1,42 1,17 1,00 0,86 0,70 -
Experiencia en S.O. utilizado 1,21 1,10 1,00 0,90 - -
Experiencia en el lenguaje de
1,14 1,07 1,00 0,95 - -
programación
Prácticas de programación modernas 1,24 1,10 1,00 0,91 0,82 -
Utilización de herramientas software 1,24 1,10 1,00 0,91 0,83 -
Limitaciones de planificación del 1,04
1,23 1,08 1,00 1,10 -
proyecto
Tabla 5.3. Ajuste del factor de complejidad
Fuente: Pressman, 1999
𝐹𝐴𝐸 = 1,55 * 1,08 * 1,15 * 1,11 * 1 * 1 * 1,07 * 0,86 * 0,82 * 0,70 * 0,90 * 0,95 * 0,91 * 1 *
1
𝐹𝐴𝐸 = 0,6
𝐿𝐷𝐶
𝑃𝑅 =
𝐸𝑠𝑓𝑢𝑒𝑟𝑧𝑜
3892,32
𝑃𝑅 =
7,99
152
𝐿𝐷𝐶
𝑃𝑅 = 487,15 𝑚𝑒𝑠
𝑃𝑒𝑟𝑠𝑜𝑛𝑎
𝐸
𝑃=
𝑇
7,99
𝑃=
5
𝑃 = 1,6
Según estas cifras será necesario un equipo de 2 personas trabajando alrededor de 5 meses.
153
CAPITULO VI
CONCLUSIONES Y
RECOMENDACIONES
154
6.1 Conclusiones
objetivo planteado por haber terminado el desarrollo de una aplicación android que resuelve los
Por tanto, se llegan las siguientes conclusiones según a los objetivos específicos y general:
• Se logro desarrollar una aplicación android que resuelve los problemas de servicios
• Se realizo la sistematización de los envíos de dinero para que los clientes no estén
• Se realizo la sistematización de las transferencias a otros bancos para que disminuya las
• Se realizo la sistematización de los pagos de servicios para que los clientes realicen sus
• Se logro realizar una aplicación que ofrezca todos los servicios de la competencia y que
6.2 Recomendaciones
A partir del presente trabajo se propone las siguientes recomendaciones, con el fin de buscar el
155
• Se recomienda realizar un módulo de facturación hacia el cliente.
156
BIBLIOGRAFIA
157
• Rodríguez González, Pilar (2008). Estudio de la Aplicación de Metodologías
• Kniberg, H. (2007). Scrum and XP from the Trenches: How we do scrum. Estados
Edición.
conocimiento”.
edición
158
REFERENCIAS
ELECTRÓNICAS
159
• Sonia Rodríguez Ruiz. Definición de Intranet
Recuperado de http://www.masadelante.com/faqs/intranet
extranet-definicion.html
Recuperado de https://www.e-intelligent.es/es/blog/ventajas-de-una-intranet-
corporativa-para-una-empresa-o-pyme
Recuperado de
https://ingsotfwarekarlacevallos.wordpress.com/2015/05/08/metodologia-de- desarrollo-
agil-xp-y-scrum/
entre-las-metodologias_5.html
Recuperado de
https://iswugaps2extremeprogramming.wordpress.com/2015/09/14/roles/
Recuperado de https://www.fdi.ucm.es/profesor/jpavon/poo/2.14.mvc.pdf
160
• Citlali G. Nieves, Juan P. Ucán-Pech, Víctor H. Menéndez, Método en Caso de Estudio
143.pdf
Recuperado de
http://sedici.unlp.edu.ar/bitstream/handle/10915/23050/Documento_completo.p
df?sequence=1
herramientas-y-lenguajes-desarrollo-aplicaciones-web/estado- del-arte-metodologias-
herramientas-y-lenguajes-desarrollo-aplicaciones- web2.shtml
Recuperado de https://es.wikipedia.org
Recuperado de https://arevalomaria.wordpress.com/
Recuperado de http://www.navegapolis.net/files/s/NST-010_01.pdf
161
ANEXOS
162
MANUAL DE
USUARIO
163
BILLETERA
“BCP”
REGISTRO DE
USUARIO
“CREAR BILLETERA”
164
Pantalla principal presionar la
opción “Crear Billetera”
afiliación del cliente
165
Llenar los dados personales en
el formulario de afiliación (Solo
se llena por única vez) y
presionar la opción siguiente
166
Ingrese una contraseña de cuatro
dígitos y siguiente.
167
Inserte el código recibido por
SMS o correo y el “Pin” de
cuatro dígitos creado
anteriormente, presionar
Registrar.
168
BILLETERA
“BCP”
INICIO
“RECARGAR CREDITO”
169
Llenar el Número De
Teléfono, el Pin creado
anteriormente y presionar la
opción “ingresar
170
le
171
Ingrese su número de celular,
seleccione el monto recarga que
requiera (ej. 1Bs), selecciones a
la compañía que pertenece su
equipo de celular y presione la
opción Recargar
172
Una vez realizado la recarga
“Volver Al Inicio”.
173
BILLETERA
“BCP”
INICIO
“ENVIO DE DINERO”
174
Presiona la opción “Envió de
dinero”
175
Presionar la opción “Envió a un
nuevo destinatario” y luego
“Billetera”
176
En los espacios inserte el
número de celular
(Ej.76282696) a destino y
posteriormente el importe a
enviar (Ej. 1 Bs), presionar
“Enviar Pago”
177
Presionar “Volver a Inicio”
178
Presionar la opción “Cuenta
BCP”
179
Introducir el número de cuenta
BCP (Ej. 20151073611388), y el
importe a enviar (Ej. 0.20).
Presionar Enviar Pago
180
Hacer clic en “volver a
inicio”
181
Presionar la opción “otros
Bancos”
182
Introducir el número de cuenta
a destino (Ej. 123456).
Seleccione la entidad financiera
a la que pertenece el número
de cuenta (Ej. Banco Unión). El
nombre al que pertenece la
cuenta (Ej. Juan Pérez) y el
monto que desee enviar (Ej.
0.01), por ultimo presionar
(Enviar pago)
183
Presionar la opción
“volver a Inicio”
184
BILLETERA
“BCP”
CONSULTAS
185
Presionar la opción
“Consultas” y “Saldo y
Movimientos”
186
En esta imagen se
observará los últimos
movimientos que se
realizó y el saldo
disponible (Ej. 2.85).
Para ir a tras presionar
187
Presionar la opción “Otros
Bancos”
188
En esta opción se observa
los movimientos o
transacciones que se realizó
a otros bancos
Para ir atrás hacer clic en
189
Presionar la Opción
“Contraseña Secreta”
190
La primera imagen aparece
“Código Habilitado” (Ej. 4069) lo
que afirma que la contraseña
está habilitada.
191
En la segunda indica que la
contraseña esta inhabilitada.
192
193
MANUAL
TECNICO
194
ARQUITECTURA
MODELADO
DIAGRAMA E/R
195
Diagrama de base de datos nivel transaccional e historial
Fuente: Elaboración propia
196
Diagrama de base de datos nivel transferencias y pago de servicios
Fuente: Elaboración propia
197
SERVICIOS WEB
198
Captura de endpoints de transferencias a cuentas BCP en Visual Studio
Fuente: Elaboración propia
199
Captura de endpoints de depósito y cambio de pin en Visual Studio
Fuente: Elaboración propia
200
MANUAL DE
INSTALACIÓN
201
Historia de las Revisiones
SERVIDORES INVOLUCRADOS
SERVIDOR FUNCIÓN
202
SERVIDOR BTBBMD01
1. CONSIDERACIONES INICIALES
1.1. BACKUP PREVIO A LA INSTALACIÓN
2. COMUNICACIÓN CON OTROS SERVIDORES
3. CREACIÓN DE USUARIOS de dominio
4. COPIA DE ARCHIVOS
5. CREACIÓN DE DIRECTORIOS COMPARTIDOS
6. INSTALACIÓN DE APLICATIVOS
7. INSTALACIÓN DE SERVICIOS
8. CONFIGURACIÓN DE SERVICIOS
9. CAMBIOS EN EL REGISTRO DEL SISTEMA
10. CONFIGURACIÓN DE SERVIDOR DE BASES DE DATOS
11. PROGRAMACIÓN DE TAREAS DE BASE DE DATOS
12. CONFIGURACIÓN DE SERVIDORES REMOTOS DE BASE DE DATOS
13. CREACIÓN DE DSN
14. REGISTRO COMPONENTES EN EL REGISTRO DEL SISTEMA
15. CREACIÓN DE PAQUETES TRANSACCIONALES
16. CREACIÓN DE REPORTES
17. REGISTRO DE COMPONENTES EN EL SERVIDOR TRANSACCIONAL
18. GENERAR ARCHIVOS PARA EXPORTAR LOS PAQUETES INSTALADOS
19. INSTALACIÓN DE COMPONENTES REMOTOS
20. REGISTRO DE COMPONENTES PARA COMUNICACIÓN CON HOST
21. CONFIGURACIÓN DEL SERVIDOR WEB
22. ARCHIVO DE RESOLUCIÓN DE NOMBRES (EJEM. LMHOSTS/HOSTS)
23. PROGRAMACIÓN DE TAREAS DEL SERVIDOR
24. RESPALDO Y RECUPERACIÓN DE DATOS (BACKUPS)
25. OTRAS CONFIGURACIONES
26. ROLLBACK
27. TAREAS COORDINADAS CON HOST
203
CONFIGURACIÓN POR SERVIDOR BTBBMD01
1. CONSIDERACIONES INICIALES
No hay impacto en esta sección.
2. BACKUP PREVIO A LA INSTALACIÓN
Realizar un back up de la base de datos
No hay impacto en esta sección.
3. COMUNICACIÓN CON OTROS SERVIDORES
No hay impacto en esta sección.
4. USUARIOS GENÉRICOS (Dominio, SIX, Servidor, etc.)
El usuario de la base de datos BD_Billetera con el cual se realiza la conexión es el
siguiente:
Certificación Producción
UsrBD_BILLETERA UsrBD_BILLETERA
5. COPIA DE ARCHIVOS
No hay impacto en esta sección.
6. CREACIÓN DE DIRECTORIOS COMPARTIDOS
No hay impacto en esta sección.
7. INSTALACIÓN DE APLICATIVOS
No hay impacto en esta sección.
8. INSTALACIÓN DE SERVICIOS
No hay impacto en esta sección.
9. CONFIGURACIÓN DE SERVICIOS
No hay impacto en esta sección.
CAMBIOS EN EL REGISTRO DEL SISTEMA
No hay impacto en esta sección.
10. CONFIGURACIÓN DE SERVIDOR DE BASES DE DATOS
204
Ingresar a Microsoft SQL Server 2008 → SQL Server Management Studio, conectarse
al gestor con los siguientes datos:
205
19. INSTALACIÓN DE COMPONENTES REMOTOS
No hay impacto en esta sección.
20. REGISTRO DE COMPONENTES PARA COMUNICACIÓN CON HOST
No hay impacto en esta sección.
21. CONFIGURACIÓN DEL SERVIDOR WEB
No hay impacto en esta sección.
22. ARCHIVO DE RESOLUCIÓN DE NOMBRES (EJEM. LMHOSTS/HOSTS)
No hay impacto en esta sección.
23. PROGRAMACIÓN DE TAREAS DEL SERVIDOR
No hay impacto en esta sección.
24. RESPALDO Y RECUPERACIÓN DE DATOS (BACKUPS).
No hay impacto en esta sección.
25. OTRAS CONFIGURACIONES
No hay impacto en esta sección.
26. ROLLBACK
Ingresar a Microsoft SQL Server 2008 → SQL Server Management Studio, conectarse
al gestor con los siguientes datos:
Server type: DataBase Engine
Server name: BTBBMD01 (Producción) y BTBBMD01 (Certificación)
Authentication: Ingrese con una cuenta administradora y asegúrese que la misma
pertenezca al grupo sysadmin del SQL Server.
206
SERVIDOR BTBBBW00
1. CONSIDERACIONES INICIALES
2. COMUNICACIÓN CON OTROS SERVIDORES
3. CREACIÓN DE USUARIOS de dominio
4. COPIA DE ARCHIVOS
5. CREACIÓN DE DIRECTORIOS COMPARTIDOS
6. INSTALACIÓN DE APLICATIVOS
7. INSTALACIÓN DE SERVICIOS
8. CONFIGURACIÓN DE SERVICIOS
9. CAMBIOS EN EL REGISTRO DEL SISTEMA
10. CONFIGURACIÓN DE SERVIDOR DE BASES DE DATOS
11. PROGRAMACIÓN DE TAREAS DE BASE DE DATOS
12. CONFIGURACIÓN DE SERVIDORES REMOTOS DE BASE DE DATOS
13. CREACIÓN DE DSN
14. REGISTRO COMPONENTES EN EL REGISTRO DEL SISTEMA
15. CREACIÓN DE PAQUETES TRANSACCIONALES
16. CREACIÓN DE REPORTES
17. REGISTRO DE COMPONENTES EN EL SERVIDOR TRANSACCIONAL
18. GENERAR ARCHIVOS PARA EXPORTAR LOS PAQUETES INSTALADOS
19. INSTALACIÓN DE COMPONENTES REMOTOS
20. REGISTRO DE COMPONENTES PARA COMUNICACIÓN CON HOST
21. CONFIGURACIÓN DEL SERVIDOR WEB
22. ARCHIVO DE RESOLUCIÓN DE NOMBRES (EJEM. LMHOSTS/HOSTS)
23. PROGRAMACIÓN DE TAREAS DEL SERVIDOR
24. RESPALDO Y RECUPERACIÓN DE DATOS (BACKUPS)
25. OTRAS CONFIGURACIONES
26. ROLLBACK
27. TAREAS COORDINADAS CON HOST
207
CONFIGURACIÓN POR SERVIDOR BTBBBW00
1. CONSIDERACIONES INICIALES
No hay impacto esta sección.
2. COPIA DE ARCHIVOS
Se debe realizar la copia de los archivos del publicado de los servicios web
WS_Billetera
De la siguiente ruta del congelado:
Congelado\5.Instaladores\2.Servidor\3.Instaladores\WS_Billetera
Copiar el contenido a la siguiente ruta del servidor:
C:\inetpub\wwwroot\Billetera\WS_Billetera
Nota: En caso de que las carpetas existan, realizar un reemplazo de las mismas. Caso
contrario crearlas
3. CONFIGURACIÓN DE SERVIDOR DE BASES DE DATOS
No hay impacto en esta sección.
4. PROGRAMACIÓN DE TAREAS DE BASE DE DATOS
No hay impacto en esta sección.
5. CONFIGURACIÓN DE SERVIDORES REMOTOS DE BASE DE DATOS
No hay impacto en esta sección.
6. CREACIÓN DE DSN
No hay impacto en esta sección.
208
7. REGISTRO COMPONENTES EN EL REGISTRO DEL SISTEMA
No hay impacto en esta sección.
8. CREACIÓN DE PAQUETES TRANSACCIONALES
No hay impacto en esta sección.
9. CREACIÓN DE REPORTES
No hay impacto en esta sección.
10. REGISTRO DE COMPONENTES EN EL SERVIDOR TRANSACCIONAL
No hay impacto en esta sección.
11. GENERAR ARCHIVOS PARA EXPORTAR LOS PAQUETES INSTALADOS
No hay impacto en esta sección.
12. INSTALACIÓN DE COMPONENTES REMOTOS
No hay impacto en esta sección.
13. REGISTRO DE COMPONENTES PARA COMUNICACIÓN CON HOST
No hay impacto en esta sección.
14. CONFIGURACIÓN DEL SERVIDOR WEB
Ingresar a la carpeta bin del back up del Billetera
…\WS_Billetera\bin
Seleccionar los archivos y copiar:
Ingresar a la siguiente ruta del servidor y pegar los archivos seleccionados:
C:\inetpub\wwwroot\Billetera\WS_Billetera\bin
209
17. RESPALDO Y RECUPERACIÓN DE DATOS (BACKUPS).
No hay impacto en esta sección.
18. OTRAS CONFIGURACIONES
No hay impacto en esta sección.
19. TAREAS COORDINADAS CON HOST
No hay impacto en esta sección.
210
DOCUMENTACIÓN
211
DECLARACIÓN JURADA
212
213
214
215
216