simulador préstamo personal - bn perú
DESCRIPTION
Ingeniería Reversa del Simulador de prestamo personal del Banco de la Nación - Perú.TRANSCRIPT
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
1
Análisis y Aplicación de Ingeniería Inversa del Simulador del Sistema de
Préstamo Personal - Sector Público - Banco de la Nación.
v. 1.3
POR
Huancayo, 05 de mayo del 2010
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
2
Contenido
CAPÍTULO I: INTRODUCCIÓN ....................................................................................... 4
1. OBJETIVO ............................................................................................................................... 4
2. JUSTIFICACIÓN ...................................................................................................................... 4
3. MARCO TEÓRICO .................................................................................................................. 4
4. ALCANCE ................................................................................................................................ 4
CAPÍTULO II: ANÁLISIS .................................................................................................... 5
5. DATOS REQUERIDOS PARA LA SIMULACIÓN: ...................................................................... 5
5.1 Situación laboral ............................................................................................................ 5
5.2 Sector laboral ................................................................................................................. 6
5.3 Fecha de nacimiento ...................................................................................................... 6
5.4 Modalidad del préstamo ............................................................................................... 6
5.5 Elegir si desea periodo de gracia ................................................................................... 7
5.6 Número de cuotas ......................................................................................................... 7
5.7 Ingreso neto promedio mensual ................................................................................... 8
5.8 Liquidación préstamo Multired anterior ....................................................................... 8
5.9 Otras cuotas pendientes en el sistema financiero ........................................................ 8
5.10 Fecha de desembolso .................................................................................................... 8
5.11 Importe de préstamo máximo ....................................................................................... 8
5.12 Elegir seguro de cuota protegida ................................................................................... 9
5.13 Préstamo solicitado ....................................................................................................... 9
6. DATOS RESULTADO DE LA SIMULACIÓN: ........................................................................... 10
6.1 Préstamo solicitado: .................................................................................................... 10
6.2 Tasa de interés efectiva anual ..................................................................................... 10
6.3 Fecha de desembolso .................................................................................................. 11
6.4 Número de cuotas ....................................................................................................... 11
6.5 Tasa seguro de desgravamen ...................................................................................... 11
6.6 Monto de Seguro de desgravamen ............................................................................. 11
6.7 Tasa Seguro de Cuota Protegida .................................................................................. 11
6.8 Monto de Seguro de Cuota Protegida ......................................................................... 11
6.9 Liquidación préstamo multired anterior ..................................................................... 11
6.10 Desembolso Neto ........................................................................................................ 11
6.11 Tasa de costo efectivo anual........................................................................................ 12
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
3
CAPÍTULO III: RECONSTRUCCIÓN ........................................................................... 13
7. RECOPILACIÓN Y ANÁLISIS DE FICHEROS ............................................................................ 13
8. IDENTIFICACIÓN Y ANÁLISIS DE REFERENCIAS PERDIDAS ................................................... 14
9. ORGANIZACIÓN DE FICHEROS ............................................................................................. 15
10. RECONSTRUCCIÓN Y SUSTITUCIÓN DE REFERENCIAS PERDIDAS ........................................ 17
CAPÍTULO IV: MANTENIMIENTO ............................................................................... 19
11. INVENTARIO DE COMPONENTES PRE-IMPLEMENTADOS ................................................... 19
12. INVENTARIO DE COMPONENTES POST-IMPLEMENTADOS ................................................. 20
CAPÍTULO V: COMPARACIÓN DE RESULTADOS .............................................. 22
13. RESULTADOS DEL SISTEMA DE SIMULACIÓN ORIGINAL ..................................................... 22
14. RESULTADOS DEL SISTEMA DE SIMULACIÓN RECONSTRUIDO ........................................... 24
CAPÍTULO VI: INSTALACIÓN ...................................................................................... 26
15. REQUERIMIENTOS PARA LA INSTALACIÓN .......................................................................... 26
16. INSTALACIÓN ....................................................................................................................... 26
CAPÍTULO VII: CONCLUSIONES ................................................................................ 28
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
4
CAPÍTULO I: INTRODUCCIÓN
1. OBJETIVO
El objetivo es realizar un sistema de simulación de Préstamos personales que realice las
mismas funciones que el sistema realizado por el Banco de la Nación haciendo uso de la
Ingeniería Inversa.
2. JUSTIFICACIÓN
El objetivo de la ingeniería inversa es obtener información técnica a partir de un producto
accesible al público, con el fin de determinar de qué está hecho, qué lo hace funcionar y
cómo fue fabricado.
3. MARCO TEÓRICO
Existen varias definiciones de Ingeniería Inversa. A continuación se mencionan algunas de
las más conocidas:
Se conoce como Ingeniería Inversa o Reverse Engineering al proceso de duplicar
una pieza, componente o conjunto, sin la ayuda de planos, documentación o
modelos auxiliares. Se parte siempre de un modelo físico y se usan métodos de
ingeniería de medida, análisis, diseño y adquisición de datos para finalmente
obtener una réplica idéntica o mejorada del objeto. (Thomson, 1999).
En el contexto del software, establecen que la ingeniería inversa es el proceso de
analizar un sistema para crear una representación del mismo, pero a un nivel más
elevado de abstracción. (Chikofsky y Cross)1
La ingeniería inversa es un proceso que recorre hacia atrás el ciclo de desarrollo
de software (Hall)2
4. ALCANCE
La Página Web Oficial del Banco de la Nación nos provee de una herramienta de
simulación de Préstamos Personales para el Sector Público3, el cual nos permite
experimentar como si fuera un Sistema de Préstamo Real realizando el cronograma de
pagos correspondientes, calculando las cuotas, los intereses, las amortizaciones, tomando
en cuenta las tasas de interés propias del estado peruano.
1 E.J. Chikofsky y J.H. Cross, “Reverse Engineering and Design Recovery: A Taxonomy”, IEEE Software,
Vol. 7, No. 1, 1990, pp. 13-17. 2 P. Hall, Software Reuse and Reverse Engineering in Practice, London, England: Chapman & Hall, Ltd.,
1990. 3 URL : https://zonasegura1.bn.com.pe/simulador/
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
5
CAPÍTULO II: ANÁLISIS
El Programa "Préstamo Personal" permite el acceso al crédito bancario a los trabajadores
activos y pensionistas del Sector Público que por motivo de su remuneración o pensión,
posean cuentas de ahorro en el BN.
5. DATOS REQUERIDOS PARA LA SIMULACIÓN:
5.1 Situación laboral
Activo:
Nombrado y Contratado por Servicios Personales4. Contratado a plazo indeterminado o Contratado a plazo determinado5
4 Régimen público (Decreto Legislativo N° 276)
5 Régimen privado (Decreto Legislativo N° 728)
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
6
Pensionista:
Cesantes o Jubilados de la ONP o a CARGO del Estado.
Los contratados por Contratos Administrativos de Servicios o por locación de servicios o bajo recibos profesionales no mantienen relación laboral con la Entidad Pública sino civil, por lo tanto no son considerados trabajadores y no pueden ser sujetos de crédito para el Banco de la Nación.
5.2 Sector laboral
No todos los sectores laborales tienen derecho a las mismas modalidades de
préstamos. En el siguiente gráfico se muestra las modalidades de convenios a las que
están sujetas:
N° SECTOR LABORAL TIPO DE CONVENIO
Clásico Primera Vez Ampliación
1 Educación X X X
2 M° Interior X X X
3 Banco de la Nación X X X
4 ONP X X X
5 Minist. Defensa – FAP X X
6 Minist. Defensa – Marina X X X
7 Minist. Defensa – Ejército X X
8 Congreso X X X
9 Salud X X X
10 Despacho Presidencial X X X
11 Gobierno Regional X X
12 Universidades X X
13 Ministerios X X
14 Poder Judicial X X X
15 Otros X
16 Municipalidades
5.3 Fecha de nacimiento
Sólo para personas con edad mayor o igual a 18 años
Sólo para personas que hasta el día de hoy cumplan 84 años
5.4 Modalidad del préstamo
A: Clásico
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
7
Préstamo de consumo ofrecido por el Banco de la Nación, cuyas características, requisitos y condiciones están dirigidas a todos los trabajadores y pensionistas del Sector Público.
B: Convenio por Primera Vez
Préstamo de consumo cuyas características, requisitos y condiciones están dirigidas a un sector específico o a una determinada entidad pública con la que el Banco de la Nación suscribe un convenio6 por vez primera.
C: Convenio Ampliación
El Cronograma de pagos del “Préstamo Personal” bajo la modalidad “con
convenio”, se generará sin las cuatro primeras cuotas de gracia con pagos de
interés. Solo habrá periodos de gracia en los meses de Abril y Diciembre, si el
cliente desea. El cliente puede elegir obtener el “Préstamo Personal” sin
periodos de gracia. Si el “Préstamo Personal” bajo la modalidad “con
convenio” se encuentra vigente, el cliente puede obtener una ampliación
habiendo amortizado al menos el 20% de su préstamo y cumplir con la
evaluación crediticia vigente. Si el Cliente no ha amortizado al menos el 20% de
su “Préstamo Personal”, puede realizar el mismo día un prepago de tal manera
que amortice el 20% y luego solicitar la ampliación de su “Préstamo Personal”.
5.5 Elegir si desea periodo de gracia
Sí
Aceptar la Opción que permite al cliente acceder a periodos de gracia en los meses de Abril y Diciembre, sin pago de amortización e interés.
No Negar la Opción que permite al cliente acceder a periodos de gracia en los meses de Abril y Diciembre, sin pago de amortización e interés.
5.6 Número de cuotas
Préstamo Clásico, hasta 48 meses con opción de elegir periodo de gracia en los meses
de abril y diciembre, sin pago de amortización e interés (El interés del periodo de
gracia se pagará al mes siguiente). A 60 meses sin periodo de gracia.
Si periodo de gracia=Sí: Número de meses de préstamo a solicitar (1- 48)
Si periodo de gracia=No: Número de meses de préstamo a solicitar (1-60)
6 Los convenios que tiene el BN con las distintas Instituciones son: Maestro, Policías, BN, ONP, FAP,
Salud, Poder Judicial, Marina, Universidades, Gobiernos Regionales, Ejercito del Perú, y Ministerios.
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
8
Préstamo Convenio Ampliació, hasta 48 meses con opción de elegir periodo de gracia
en los meses de abril y diciembre, sin pago de amortización e interés (El interés del
periodo de gracia se pagará al mes siguiente).
Si periodo de gracia=Sí: Número de meses de préstamo a solicitar (1- 48)
Si periodo de gracia=No: Número de meses de préstamo a solicitar (1-48)
Préstamo por primera vez, hasta 48 meses con opción de elegir periodo de gracia en
los meses de abril y diciembre. La elección del periodo de gracia, otorga las cuatro
primeras cuotas de gracia con pago de interés.
Si periodo de gracia=Sí: Número de meses de préstamo a solicitar (5- 48)
Si periodo de gracia=No: Número de meses de préstamo a solicitar (1-48)
5.7 Ingreso neto promedio mensual
Sueldo Promedio Mensual abonado en la cuenta de ahorros por concepto de
remuneración o pensión (Debe ser mayor a S/. 75)
5.8 Liquidación préstamo Multired anterior
Monto del Saldo deudor si se tiene algún préstamo multired vigente.
5.9 Otras cuotas pendientes en el sistema financiero
Suma total de las cuotas mensuales que se adeuda en el sistema financiero y se pagan
en el mismo mes.
5.10 Fecha de desembolso
La fecha de desembolso del préstamo es la fecha a partir del cual se comenzará a
cobrar las cuotas.
5.11 Importe de préstamo máximo
Muestra el importe de préstamo máximo al que puede acceder según el promedio de
ingresos y nivel de deudas en el sistema financiero.
Éste importe es calculado automáticamente por el sistema de simulación de
préstamos.
Donde: IP : Importe máximo de Préstamo Multired Clásico o Convenio.
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
9
DeudasSF : Pago mensual por deudas que mantiene el cliente en el resto del Sistema Financiero. W : Ingreso Promedio Mensual, abonado en Cuenta de Ahorros. ∑FA : Sumatoria de Factores de Actualización de la Cuota
El Factor para el Préstamo Personal a 60 Meses es:
P60meses = (10.42105263 - 31.57894737 * DeudasSF / Ingreso) * Ingreso
Se debe considerar la opción de que el cliente elija si el préstamo es con o sin periodo de gracia en los Préstamos clásicos y por Convenios a excepción de los préstamos a 60 meses.
5.12 Elegir seguro de cuota protegida
Está referida a la Cuota Protegida por Incapacidad Temporal o Desempleo Involuntario. Éste seguro es opcional (a elección del cliente) y se aplicará sobre el importe del préstamo que afectará a su vez a la Tasa de Costo Efectivo Anual. Su valor es el siguiente:
Tasa Neta Única = 1.371% + Derecho de Emisión = 0.041% IGV = 0.268% _________________________________________ Tasa Total de Seguro de Cuota Protegida = 1.68%
Sí
Aceptar contar con seguro de cuota protegida.
No
No desear contar con seguro de cuota protegida.
5.13 Préstamo solicitado
El préstamo solicitado no debe ser mayor al importe de préstamo máximo.
El préstamo solicitado debe ser mayor o igual a 300.
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
10
6. DATOS RESULTADO DE LA SIMULACIÓN:
6.1 Préstamo solicitado:
Ver índice 1.13.
6.2 Tasa de interés efectiva anual
Calculo de Interés para la primera cuota
Calculo d interés a partir de la segunda cuota
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
11
Donde: It : Interés en el periodo t i tea: Tasa de interés efectiva anual, aplicable para un año de 360 días
n : Número de días transcurridos en el periodo t S : Saldo pendiente de cobro en el periodo t-1
6.3 Fecha de desembolso
Ver índice 1.10.
6.4 Número de cuotas
Ver índice 1.6
6.5 Tasa seguro de desgravamen
Lo brinda la Compañía de Seguros “La Positiva Vida Seguros y Reaseguros”, la prima que se cobrará asciende a 1.5% sobre el importe del préstamo mas 3% del importe de la prima que corresponde al derecho de emisión lo que se cobrará al otorgamiento de la operación y cubrirá los beneficios que serán publicados en las agencias del Banco y su página Web.
Seguro de Desgravamen: 1.545%
6.6 Monto de Seguro de desgravamen
6.7 Tasa Seguro de Cuota Protegida
Ver Índice 1.12
6.8 Monto de Seguro de Cuota Protegida
6.9 Liquidación préstamo multired anterior
Ver índice 1.8
6.10 Desembolso Neto
Es el monto que resulta de deducir el Seguro de Desgravamen, Seguro de Cuota Protegida y los cargos por ITF al importe del préstamo, tal y como se puede observar:
PMS = PS * (1 – SD – SCP) DN = PMS - LPA MACA = DN * (1 - ITF)
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
12
MNER = MACA* (1 – ITF) Donde:
PS : Préstamo Solicitado SD : Seguro de Desgravamen (%) SCP : Seguro de Cuota Protegida (%) PMS : Préstamo menos Seguros LPA: Liquidación del Préstamo Anterior DN : Préstamo Solicitado menos Seguros y Liquidación del Préstamo Anterior ITF : Impuesto de Transacciones Financieras (%) MACA : Monto abonado a Cta. De Ahorros MNER : Monto Neto Efectivamente Recibido
6.11 Tasa de costo efectivo anual7
Es la tasa de interés que hace que el valor actual de todas las cuotas (monto del principal e intereses) que el cliente deberá cancelar en la fecha de vencimiento de acuerdo a las condiciones pactadas (no se efectúan pagos adicionales) sea igual al valor del Préstamo menos Seguros.
Donde: N : Número Total de meses C : Cuota del Periodo “i” i
TCEA : Tasa de Costo Efectivo Anual PMS : Préstamo menos Seguros
7 De acuerdo con el artículo 13° del Reglamento de Transparencia de Información y Disposiciones
Aplicables a la Contratación con Usuarios del Sistema Financiero, los simuladores de crédito, además de otorgar un cronograma detallado de las cuotas a pagar, deben mostrar también la Tasa de Costo Efectivo Anual (TCEA).
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
13
CAPÍTULO III: RECONSTRUCCIÓN
7. RECOPILACIÓN Y ANÁLISIS DE FICHEROS
El acto de realizar un respaldo de la página principal del simulador en alguna unidad de
almacenamiento nos facilita la obtención de los siguientes ficheros:
Préstamo Personal sector público - Banco de la Nación.htm
base_2k8_es-es-pe.css
wuTricks.css
active.js
bn_rad_ajax.js
calendar_lang-es-pe.js
calendar_new-es-pe.js
calendar_setup_new-es-pe.js
formateoNumero.js
imask-full.js
mootools.js
print.css
valid.js
valor.js
ic_calendar.gif
logobn.gif
El objetivo es reorganizar la estructura de los ficheros componentes y reemplazar los
ficheros no obtenidos por otros que serán creados para realizar la misma función.
Para tal mérito es necesario describir detalladamente la funcionalidad de los ficheros
obtenidos que contienen código fuente necesario para descifrar el funcionamiento del
Simulador y al mismo tiempo, conocer los ficheros no obtenidos mediante llamadas
realizadas desde el código fuente de los ficheros con los que contamos.
1. Préstamo Personal sector público - Banco de la Nación.htm: Fichero Principal,
contiene el código fuente del formulario inicial del simulador. El código fuente
HTML está embebido con códigos en javascript
2. base_2k8_es-es-pe.css: Hoja de estilo que define el diseño del control calendario
ubicada en la zona de “Fecha de desembolso”, del formulario inicial del Simulador.
/images/common/close_window.gif
/images/common/close_window_hover.gif
3. print.css: Hoja de estilo que contiene formatos definidos para el diseño de diversas
partes de la página del Simulador, como: encabezados, títulos, botones, mensajes
de error, leyendas, logos, tablas, celdas, fondos, estilos de controles, etc.
../images/fondo_cab.jpg
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
14
../images/pto.gif
4. wuTricks.css: Hoja de estilo usado exclusivamente para el diseño de los mensajes
de ayuda mostrados como cuadros flotantes al momento de poner el foco sobre
las cajas de texto requeridas para insertar algún dato.
5. active.js: Fichero javascript que contiene funciones para mostrar capas con
eventos "onFocus", "onBlur".
onFocus: detecta la entrada en un elemento de un formulario.
onBlur: se activa cuando el usuario retira el foco de la aplicación de un
elemento de la página.
6. bn_rad_ajax.js: Fichero javascript que contiene funciones para usar el objeto AJAX.
7. calendar_lang-es-pe.js: Fichero javascript que incluye el lenguaje en el que
presentara el calendario, en este caso español.
8. calendar_new-es-pe.js: Fichero javascript que incluye el lenguaje en el que
presentara el calendario, en este caso español.
9. calendar_setup_new-es-pe.js: Fichero javascript que carga el calendario y
configurar con los valores que deseemos.
10. formateoNumero.js: Fichero javascript que contiene funciones para validar el
ingreso de datos en campos numéricos.
11. imask-full.js: Fichero javascript que contiene mascaras para diferentes controles y
tipos de datos como fechas, números, monedas, etc.
12. mootools.js: En particular son para realizar un lightbox y un slider de imágenes.
13. valid.js: Valida que ingreso de datos sea correcto dependiendo de su estructura: si
es email, si es números, si es fecha, si está vacío, etc.
14. valor.js: Contiene diferentes funciones, entre ellos el evento ONKEYPRESS,
funciones para restringir los caracteres que se ingresan en una caja de texto,
funciones para operaciones con fechas y otros.
15. ic_calendar.gif: Ícono de calendario ubicada en la zona de Fecha de desembolso
del formulario principal.
16. logobn.gif: Logo del Banco de la Nación.
8. IDENTIFICACIÓN Y ANÁLISIS DE REFERENCIAS PERDIDAS
Mediante una minuciosa revisión del código fuente de los diferentes scripts obtenidos
en el proceso de recopilación de ficheros se ha captado referencias perdidas que no
han sido posible obtener los mediante la descarga del formulario web. Estas
referencias perdidas corresponden tanto a scripts como a ficheros tipo imágenes y
otros:
1. simuladorPerso.do
2. simulador/cronogramaPagos.do
3. ../images/fondo_cab.jpg
4. ../images/pto.gif
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
15
Una vez identificada las referencias perdidas, el siguiente paso es evaluar el
comportamiento del sistema sin estas referencias, y analizar el grado de importancia
que tiene éstas para el funcionamiento del sistema:
N° Referencias Importancia
1 simuladorPerso.do ALTA
2 simulador/cronogramaPagos.do ALTA
3 ../images/fondo_cab.jpg BAJA
4 ../images/pto.gif BAJA
Éste es el paso más importante en todo el proceso de ingeniería inversa del Formulario
de Simulación.
Después de haber estudiado la conducta del código fuente obtenido es preciso inducir
la funcionalidad de los ficheros con los que no contamos.
El Sistema a pesar de estar estructurado correctamente carece de funcionalidad por la
inexistencia de 2 ficheros que al parecer son de vital importancia:
1. simuladorPerso.do
2. simulador/cronogramaPagos.do
simuladorPerso.do: Basándome en las llamadas a diferentes rutinas desde el código
fuente del fichero principal llego a deducir que simuladorPerso.do es un fichero que
contiene las funciones vitales para la determinación de los cálculos de intereses,
cuotas, amortizaciones y una posible conexión a una base de datos para mostrar ítems
como: Sector Laboral, Modalidad de Préstamo y extracción de datos generales como la
tasa de interés efectiva anual, tasa de seguro desgravamen, días de pago, etc; los que
serán descritos de manera más detallada en la siguiente etapa.
simulador/cronogramaPagos.do: Por otra parte, cronogramaPagos.do es referenciado
únicamente al momento de dar la orden de generar el cronograma de pagos para el
préstamo simulado, por el cual se deduce que contendrá el código fuente del segundo
formulario del Sistema de Simulación.
9. ORGANIZACIÓN DE FICHEROS
Los ficheros siempre son referenciados mediante una ruta (PATH) dentro del código
fuente, mediante el cual se logró identificar la estructura general de referencias del
sistema de simulación:
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
16
1. css/print.css
2. css/wuTricks.css
3. herramientas/calendario2/base_2k8_es-es-pe.css
4. herramientas/calendario2/calendar_new-es-pe.js
5. herramientas/calendario2/calendar_lang-es-pe.js
6. herramientas/calendario2/calendar_setup_new-es-pe.js
7. js/active.js
8. js/bn_rad_ajax.js
9. js/mootools.r560.js
10. js/imask-full.js
11. js/formateoNumero.js
12. js/valid.js
13. js/valor.js
14. simuladorPerso.do
15. simulador/cronogramaPagos.do
16. images/logobn.gif
17. images/ic_calendar.gif
18. images/fondo_cab.jpg
19. images/pto.gif
Mediante las rutas mostradas podemos deducir que la organización de la estructura
del Sistema fue de la siguiente manera:
css/ print.css wuTricks.css herramientas/ calendario2/ base_2k8_es-es-pe.css calendar_new-es-pe.js calendar_lang-es-pe.js calendar_setup_new-es-pe.js js/ active.js bn_rad_ajax.js mootools.r560.js imask-full.js formateoNumero.js valid.js valor.js
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
17
simulador/ cronogramaPagos.do images/ logobn.gif ic_calendar.gif fondo_cab.jpg pto.gif simuladorPerso.do inicio.htm
10. RECONSTRUCCIÓN Y SUSTITUCIÓN DE REFERENCIAS PERDIDAS
El objetivo de la siguiente fase será construir los 2 ficheros encontrados en la
verificación de referencias perdidas. La tecnología de lenguaje de programación usada
hasta entonces ha sido HTML y Javascript, para completar el sistema y volverlo
funcional se ha decidió realizar los nuevos componentes en el lenguaje PHP, además
se hará uso de PostgreSQL como base de datos que contendrá registros necesarios
para la operatividad del sistema.
Al final existirán referencias a 3 formularios nuevos en PHP, los cuales serán producto
de sustituir los 2 ficheros de extensión *.do antes mencionado y realizar un mínimo
cambio sobre el formulario web inicial, al que también se le cambiará la extensión
*.htm por *.php.
La nueva estructura de ficheros producto del cambio de extensión de las referencias
perdidas que serán creadas será como se muestra:
css/ print.css wuTricks.css herramientas/ calendario2/ base_2k8_es-es-pe.css calendar_new-es-pe.js calendar_lang-es-pe.js calendar_setup_new-es-pe.js js/ active.js bn_rad_ajax.js mootools.r560.js imask-full.js formateoNumero.js valid.js valor.js simulador/ cronogramaPagos.php images/
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
18
logobn.gif ic_calendar.gif fondo_cab.jpg pto.gif simuladorPerso.php inicio.php
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
19
CAPÍTULO IV: MANTENIMIENTO 11. INVENTARIO DE COMPONENTES PRE-IMPLEMENTADOS
Corresponde a las variables, funciones, procedimientos ya existentes desde el momento de la
recopilación de componentes del Simulador:
Variables (JavaScript)
methodToCall situacionLaboral sectorLaboral fecNacimiento modalidadPrestamo elegirPeriodoGracia numMeses promedioIngreso otrasCuotasPendientesSF fecDesembolso edadAnios edadDias edadMeses prestamoSolicitado
Funciones (JavaScript) calcular_edad(Fecha) CalcularEdad(fechaNacimiento) calcularImporteMaximo(campo) calcularImporteMaximoII(campo) calcularImporteMaximoxFecha(campo) calcularImporteMaximoxOtrasCuentasSF(campo) calendario() cambiarFoco(campo) cargarCuotas(id,campo) cargarModalidad() cargarSectorLaboral() checkYear(year) DaysArray(n) daysInFebruary (year) isFecha(dtStr) isInteger(s) jsFocus() jsGenerarCronograma(accion) jsSubmit(accion) jsValidaFECHA(valor)
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
20
jsValidarDigitos(e,accion) jsValidarDigitosPersonalizado(e,valor,accion) jsVerificarImporte(valor,campo) jsVerificarImporteDeuda(campo) obtenerDia(dia) obtenerDiaMes(Anio,mes) stripCharsInBag(s, bag) trim(strText) ValidarEdad(fecha) validarInput(campo) validarSiProcedeCalcularImporteMaximo() ValidateForm(Campo,origen) Verificacion() verificarFecha(fecha)
12. INVENTARIO DE COMPONENTES POST-IMPLEMENTADOS
Corresponde a las variables, funciones, procedimientos y base de datos que fueron creados
para sustituirlos a los componentes no obtenidos en el momento de recopilación de ficheros:
Variables (PHP)
$methodToCall $situacionLaboral $sectorLaboral $fecNacimiento $modalidadPrestamo $elegirPeriodoGracia $numMeses $promedioIngreso $otrasCuotasPendientesSF $fecDesembolso $edadAnios $edadDias $edadMeses $prestamoSolicitado
Funciones (PHP)
conectar($sql) prestamoSolicitado() TEA() fecDesembolso() numMeses() segDesgravamen() mtoSeguroDesgravamen()
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
21
dia_de_pago
id_sectorlaboral (FK)
activo
pensionista
modalidad
id_modalidad
nombre_modalidad
modalidad_sectorlaboral
id_modalidad (FK)
id_sectorlaboral (FK)
sectorlaboral
id_sectorlaboral
nombre_sectorlaboral
segCuotaProtegida() mtoSeguroCuotaProtegida() deudaPrestamoVigente() desembolsoNeto() TCEA() cuotaFija() diaPago() periodoDeGracia() obtenerDiaDePago() obtenerFechaPagoSiguiente($fecPago) obtenerFechaPagoAnterior($fecPago) FSA($fechaN) FTA() interes($fecha1,$fecha2,$saldoAnterior) cuota($fecha1,$fecha2,$saldoAnterior) importeMaximoPrestamo() tipoConvenio() numPeriodo($fechaN) redondeado($numero, $decimales) date_diff($fecInicio,$fecFin) formato_moneda($numero) Procedimientos (PHP)
cargarModalidad() cargarNumeroCuotas() cargarSectorLaboral() cargarMontoMaximo() Base de Datos (PostgreSQL) Funciones (PostgreSQL) f_cargarmodalidad(sectorlaboral integer) f_cargarsectorlaboral(situacionlaboral integer)
Tablas
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
22
CAPÍTULO V: COMPARACIÓN DE RESULTADOS
13. RESULTADOS DEL SISTEMA DE SIMULACIÓN ORIGINAL
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
23
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
24
14. RESULTADOS DEL SISTEMA DE SIMULACIÓN RECONSTRUIDO
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
25
La única diferencia es en los resultados del TCEA que difieren levemente, lo cual deberá ser analizado para lograr una exactitud con el del sistema original.
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
26
CAPÍTULO VI: INSTALACIÓN
15. REQUERIMIENTOS PARA LA INSTALACIÓN
Para la puesta en marcha del simulador es necesario contar con un servidor web, un
servidor de base de datos y un servidor de aplicaciones PHP.
El desarrollo actual se realizó contando con una infraestructura adecuada como:
Servidor Web: Apache
Servidor de Base de Datos: PostgreSQL 8.4
Plataforma PHP
16. INSTALACIÓN
Baja la plataforma Windows, podemos aprovechar la potencia de XAMPP, y dejar
arrancando el servidor Web Apache. Conjuntamente con XAMPP se instala la plataforma
PHP.
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
27
Posteriormente también se deberá instalar el servidor de base de datos PostgreSQL, crear una base de datos de nombre bn2, y sobre él ejecutar el script adjuntado en la aplicación que se encargará de la creación de tablas, funciones y cargar la base de datos con la información necesaria.
Por último, se deberá modificar parte del script simuladorPerso.php específicamente la función conectar($sql) , en el que se sustituirá los valores de host, port, password, user y dbase según la configuración de su servidor:
SIMULADOR DEL SISTEMA DE PRÉSTAMO PERSONAL - SECTOR PÚBLICO
BANCO DE LA NACIÓN – Perú
28
CAPÍTULO VII: CONCLUSIONES
La técnica utilizada fue la ingeniería inversa basada en los componentes pre-existentes
para descifrar el comportamiento de los componentes no recopilados, con el fin de
crear unos nuevos que cumplan satisfactoriamente ésta función.
Al hacer uso de los componentes pre-existentes obtenidas desde la web del simulador,
se ha logrado un ahorro significativo de tiempo en la programación de interfaces,
diseños, formatos, etc.
Se ha dedica el tiempo en estudiar el código fuente de los scripts encontrados y en la
reorganización de ficheros encontrados y la creación y codificación de funciones para
cada uno de los cálculos a realizar.