jueves, 26 de marzo de 2015

Mirar atrás!

Es tiempo de aplicar este principio, mirar atrás, determinar que podemos mejorar y agregar para que el código cumpla con lo requerido de una manera eficiente y eficaz. Como hacerlo entendible y útil, quitando código muerto e innecesario. 



Quedamos satisfechas con el trabajo realizado, estamos seguras que es un código útil, bien realizado y que cumple con nuestras expectativas y con lo requerido. Todo está resumido en nuestra documentación, inclusive un manual de usuario. Esto con el objetivo de orientar a personas que no sepan de programación y que deseen utilizar el código sepan como instalar el programa y  el paso a paso para ejecutar el software.




miércoles, 25 de marzo de 2015

Toques Finales...

Mi compañera de trabajo y yo convenimos reunirnos para realizar los últimos detalles faltantes de la programación y documentación. Tratamos de simplificar el código y ordenarlo de una manera lógica que sea entendible para cualquier tipo de mantenimiento o manipulación a futuro. A l  mismo tiempo queríamos desarrollar una documentación completa e informativa, cumpliendo con todos los rubros requeridos, recopilando todo el proceso de programación, incluyendo las distintas situaciones que se facilitaron y dificultaron el proceso, y como soluciones y mejoramos a partir de estas.



lunes, 23 de marzo de 2015

Documentación

Empezamos a documentar todos los "Olores de Software" que experimentamos al realizar la programación y como hicimos para prevenir algunas. Especificando al mismo tiempo los principios del programador que tuvimos presentes en el desarrollo del proyecto. Reunimos todos los screenshots y pruebas de cada una de ellas.



sábado, 21 de marzo de 2015

Programación del Web Service y funciones principales

Iniciamos la programación del web service con la información que previamente había investigado. Nos tomó tiempo y un poco de dificultad realizarla. Pero al final nos dió los resultados esperados. A partir de esta función y el de las cuotas de ahorro y cancelación anteriormente programadas, empezamos a desarrollar las dos funciones principales: generarCuotasColones y generarCuotasDolares. La primera se complementa con las funciones de cuotas de ahorro y cancelación de cada uno de los plazos. La segunda se complementa con la del web service. 
Logramos mejorar los resultados de las cuotas, en cuanto a redondeo.  Y nos faltaría mejorar y correir errores de la de dólares.




miércoles, 18 de marzo de 2015

Estrategia y Programación

A este punto ya tenemos gran parte de la información necesaria para empezar a plantear una estrategia de como realizar el código. Mi compañera de trabajo y yo nos reunimos para unir toda la información recopilada y empezar la programación. Antes de eso nos planteamos como queríamos distribuir el código, tomar las medidas necesarias para evitar algún "Olor de Software" y siempre tener en cuenta cada uno de los "´Principios del Programador".
Logramos realizar las funciones que calculan las cuotas de ahorro y cancelación. Nos falta algunos ajustes de redondeo para que las cuotas den exactas.




martes, 17 de marzo de 2015

Conectarse al Web Service

Investigamos la conexión de Python a un web service. En la página oficial de Python encontramos una librería estándar de IP llamada urllib.parse. Esta analiza URLs en componentes
Este módulo define una interfaz estándar para romper Uniform Resource Locator (URL) las cuerdas en componentes (esquema de direccionamiento, ubicación de red, ruta, etc.), para combinar los componentes de vuelta a una cadena URL, y para convertir una "URL relativa" a un URL absoluta dado una "URL base."
El módulo ha sido diseñado para que coincida con el RFC de Internet en localizadores uniformes de recursos relativos (y descubierto un bug en un proyecto anterior!). Es compatible con los siguientes esquemas de URL: archivo, FTP, Gopher, hdl, http, https, imap, mailto, mms, noticias, NNTP, prospero, rsync, rtsp, rtspu, sftp, shttp, sorbo, sorbos, SNEWS, svn, svn + ssh, telnet, wais.

Además encontramos la cláusula try y except:
Si no se produce ninguna excepción, la excepción de la cláusula se omite y la ejecución de la sentencia try ha terminado.
Si se produce una excepción durante la ejecución de la cláusula try, el resto de la cláusula se salta. Entonces, si su tipo coincide con la excepción nombrada después de la palabra clave except, la cláusula except se ejecuta, y luego la ejecución continúa después de la sentencia try.
Si se produce una excepción que no coincide con la excepción mencionada en la cláusula except, se pasa a sentencias try exteriores; si no se encuentra ningún controlador, es una excepción no controlada y la ejecución se detiene con un mensaje como se muestra arriba.


sábado, 14 de marzo de 2015

Planeamiento e Investigación





Comenzamos con la comprensión del problema propuesto,además un planteamiento previo de los requerimientos para llevar a cabo el desarrollo del proyecto, y así otorgar los distintos temas a investigar necesarios para la resolución del reto a cada uno de los miembros del equipo. 


Para iniciar necesitamos determinar las fórmulas para calcular las cuotas de ahorro, préstamos  y cancelación. Mi compañera de trabajo será la encargada de investigar y desarrollar este paso. 

Otro tema importante a investigar, es conocer la serie de pasos para programar en Python una función que le permita consultar en línea el tipo de cambio de compra en doláres según el web service del Banco Central de Costa Rica. Este sería mi tema a investigar y desarrollar, por lo tanto es lo primero a tratar en este blog. 





Calculadora de Planes de Ahorro y Préstamo del INVU

  • Objetivo: Desarrollar una solución que permita a los clientes y usuarios del Instituto Nacional de Vivienda y Urbanismo (INVU) conocer las cuotas de ahorro y de cancelación del préstamo.

Los planes buscan ser una opción solidaria para acceder a préstamos hipotecarios con una tasa de interés fija sobre saldos durante todo el período de cancelación. 
El cliente debe decidir el monto del plan (en millones de colones) y deberá decidir el tipo de plan, es decir, cuántos años quiere ahorrar y cuántos años quiere pagar el préstamo correspondiente. Los montos y tipos de planes disponibles son los siguientes:


Debe implementar dos funciones en Python. Una que retorne los porcentajes de ahorro, el monto de las cuotas de ahorro, el porcentaje del préstamo y el monto de las cuotas de cancelación en colones, y otra función que plantee lo mismo pero en dólares. Para realizar la conversión en dólares deberá consultar en línea el tipo de cambio de compra del día según el web service del Banco Central de Costa Rica.