ALGORITMOS Y ESTRUCTURAS DE DATOScursos.iplacex.cl/CED/AED3008/S5/ME_5.pdfALGORITMOS Y ESTRUCTURAS...
Transcript of ALGORITMOS Y ESTRUCTURAS DE DATOScursos.iplacex.cl/CED/AED3008/S5/ME_5.pdfALGORITMOS Y ESTRUCTURAS...
-
ALGORITMOS Y ESTRUCTURAS DE DATOS UNIDAD Nº III
Testing de aplicaciones
[Escribir texto]
-
2
www.iplacex.cl
SEMANA 5
INTRODUCCIÓN
Una vez que has aprendido a desarrollar pequeñas aplicaciones que manejen
mayores volúmenes de datos gracias a los arreglos y ArrayList, es hora de que estas
aplicaciones cumplan de mejor manera los requerimientos del usuario.
Para que un software entregue soluciones en un entorno empresarial concreto, este
debe adaptarse y hacer un manejo de la información cumpliendo ciertas condiciones.
Estas reglas o condiciones se conocen como “reglas de negocio”.
Las reglas de negocio describen las políticas, normas, operaciones, definiciones y
restricciones presentes en una organización y que son de vital importancia para
alcanzar los objetivos misionales.
Seguramente, en algún momento de tu vida has solicitado un crédito bancario. Y
sabrás también que no es llegar y pedir, hay que pasar por un proceso de evaluación
antes de saber si lo aprueban o no. Pues bien, a esto se refieren las reglas de
negocio.
Siguiendo este ejemplo, supongamos que los requisitos para conseguir un crédito son
tener entre 18 y 65 años, tener un nivel de ingreso mensual superior a $300.000 y
firmar un documento en garantía. Este conjunto de condiciones es lo que llamamos
“reglas de negocio”. Y estas condiciones se deben ver reflejadas en el código.
En esta semana aprenderás cómo implementar las reglas de negocio en tu código.
http://www.iplacex.cl/
-
3
www.iplacex.cl
IDEAS FUERZA
Reglas de negocio.
La razón de ser de un software es dar solución a problemas de manejo de
información de una determinada organización. Y toda organización tiene sus reglas,
su forma de hacer las cosas. Y para poder implementarlas es que esta semana
aprenderás el concepto de reglas de negocio y los ejemplos de código que ilustran
este concepto.
Implementación de reglas de negocio:
Se pueden realizar primariamente de dos procederes:
En la Diligencia, que dice relación con la aplicación web, de escritorio o Mobile.
También es posible trabajar desde la base de datos, que Se esgrime el motor de base de datos determinado por la compañía.
Se presenta primordialmente en las operaciones de acopiado y
funciones.
Implementación del código
Poseer un buena conducción de conocimientos del lenguaje de
programación a utilizar.
Utilizar variables y estructuras de datos que permitan dar solución a los
requerimientos del usuario final.
El código generado se debe testear utilizando técnicas manuales o
automatizadas, para garantizar minimización de errores ya sea en tiempo
de compilación como de ejecución.
http://www.iplacex.cl/
-
4
www.iplacex.cl
Desarrollo
Importancia de las Reglas de Negocio
Las reglas de negocio definen y controlan la estructura y el funcionamiento de un
sistema. La importancia de ellas es que permiten:
Establecer las normas de funcionamiento del negocio dentro de una
empresa
Especificar de qué forma interactúan los procesos dentro de la organización
Establecer comportamientos, los cuales pueden ser implementados
mediante programación, ya sea en la aplicación o en la base de datos
Ejemplos de Reglas de Negocios
Ejemplo 1: Reembolso Web
a) Para realizar el reembolso el afiliado debe ingresar con su usuario y clave en el
portal de la Isapre. (Se debe validar el acceso).
b) Debe ir a la sección reembolsos e ingresar los datos de la boleta solicitados y
una foto o escáner de la boleta (Se deben validar los datos ingresados y el peso
del archivo).
c) Una vez que se envíe la información se realiza el proceso de análisis del
requerimiento para ver si el reembolso es o no pertinente de acuerdo al plan de
salud del afiliado.
Ejemplo 2: Depósito en cuenta APV de AFP
a) Para realizar un depósito en una cuenta de APV el afiliado debe ingresar con su
usuario y clave en el portal de la AFP. (Se debe validar el acceso).
http://www.iplacex.cl/
-
5
www.iplacex.cl
b) Debe ir a la sección Depósitos en Línea, seleccionar su cuenta de APV, ingresar
el monto del pago y luego elegir algún medio de pago electrónico disponible.
c) Una vez realizado lo anterior se emitirá un comprobante de pago, el cual se
enviará por email al afiliado y una vez que se corrobore el pago se ingresará a la
cuenta en un plazo de 4 días hábiles.
Ejemplo 3: Compra Online para retiro en tienda
a) Para realizar una compra en la tienda online, el cliente debe ingresar con su
usuario y clave en el portal de la tienda (Se debe validar el acceso). En caso de no
tener credenciales se puede registrar en línea.
b) El cliente debe seleccionar los productos que va a comprar, los cuales se
agregarán en un carrito de compras, luego deberá confirmar los productos a
comprar y elegir algún medio de pago electrónico disponible.
c) Luego de verificar el pago, se generará una orden para que sus productos
puedan ser retirados en alguna tienda elegida por el cliente.
Explicación de las reglas de negocio
De los ejemplos anteriores podemos darnos cuenta de que las reglas de negocio
son:
Más que una simple validación de campos de formulario
Más que una simple operatoria o cálculo específico
Las reglas de negocio son la forma en que el negocio se define y se
implementa en la práctica. Muchas de estas reglas se pueden automatizar
utilizando la programación.
http://www.iplacex.cl/
-
6
www.iplacex.cl
Cómo se implementan las reglas de negocio
Las reglas de negocio se pueden implementar principalmente de dos maneras:
- En la Aplicación:
Esta aplicación puede ser web, de escritorio o Mobile.
Debe considerar el lenguaje de programación definido por la empresa.
- En la Base de Datos:
Se utiliza el motor de base de datos definido por la empresa.
Se programa principalmente en los procedimientos de almacenado y
funciones.
Para implementar el código que cumpla con las reglas del negocio se debe:
Realizar un análisis de todos los componentes necesarios para cumplir la
regla.
Programar cada componente en forma independiente utilizando la
orientación a objetos
Realizar integración de componentes de software
Realizar testing de aplicaciones para la búsqueda y corrección de errores.
Solicitar al usuario final que revise el software para que dé su visto bueno o
indique modificaciones que deban realizarse.
http://www.iplacex.cl/
-
7
www.iplacex.cl
Cómo se implementa el código
Dentro de las principales recomendaciones para la implementación del código
están las siguientes:
Tener un buen manejo de conocimientos del lenguaje de programación a
utilizar.
Utilizar variables y estructuras de datos que permitan dar solución a los
requerimientos del usuario final.
El código generado se debe testear utilizando técnicas manuales o
automatizadas, para garantizar minimización de errores ya sea en tiempo
de compilación como de ejecución.
Se debe ser ordenado y comentar apropiadamente el código, de esta
manera se optimiza el mantenimiento del código.
Implementación de reglas de negocio en Java
A continuación, revisaremos 3 ejemplos de implementación de reglas de negocio,
de esta forma aplicaremos lo aprendido en las semanas anteriores.
1.- Ejemplo Banco: utilizaremos sintaxis básica de java
2.- Ejemplo Tienda: utilizaremos manejo de arreglos en java
3.- Ejemplo Isapre: utilizaremos manejo de ArrayList en java
http://www.iplacex.cl/
-
8
www.iplacex.cl
Ejemplo 1: Reglas de negocio de un Banco
Para abrir una cuenta corriente se deben cumplir los siguientes requisitos:
Ser mayor de edad
Acreditar renta
Tramo de renta desde 500.000 mensual
Comprobante de domicilio
En el siguiente código fuente se implementa la regla de negocio, donde se valida y
verifica que se cumplan todos los requisitos para ser cliente del banco:
http://www.iplacex.cl/
-
9
www.iplacex.cl
Nótese que el uso de condicionales es bastante útil para validar reglas de negocio.
Es importante considerar diferentes caminos ya sea en caso de cumplir con la
regla de negocio y en caso de que no, todo debe estar definido en la
programación.
http://www.iplacex.cl/
-
10
www.iplacex.cl
Casos de Prueba:
- Ejemplo 2: Reglas de negocio de una Tienda
Se establece como rentable una sucursal que tenga ganancias mensuales
superiores a 50 millones.
Si no cumple lo anterior a la sucursal se le debe enviar una alerta.
Se observa la implementación de la regla de negocio, donde se realiza el recorrido
del arreglo de sucursales y mediante un condicional se detectan las sucursales
que no cumplen con la meta de ganancia propuesta.
Nótese que el manejo de estructuras de datos es muy importante para la
implementación de reglas de negocio, en este caso permite almacenar las
ganancias de cada sucursal y realizar operaciones sobre ella.
http://www.iplacex.cl/
-
11
www.iplacex.cl
Ejemplo 3: Reglas de negocio en una Isapre
Como nueva política de empresa se establece que se realizarán campañas
especiales a los afiliados que utilicen sus excedentes en farmacias.
Para lo anterior se debe definir una clase AfiliadoFarmacia, la cual posea un
atributo ArrayList donde se ingresen los montos utilizados en farmacias en
el mes.
Si el monto mensual gastado en excedentes es superior a 30.000 se le
considerará en la campaña.
Observa el código fuente. Nótese que estamos programando la lógica de negocio
en la clase AfiliadoFarmacia, no en la clase main como en los ejemplos anteriores.
http://www.iplacex.cl/
-
12
www.iplacex.cl
La regla de negocio se implementa en el método calculoMensual(), donde se
recorre el ArrayList de gastos y se suman todos los elementos que contiene.
Luego de lo anterior se compara con los 30.000 y si el monto es superior a este
número se considera que el afiliado cumple los requisitos para participar en la
campaña, en caso contrario no se considera.
Para ilustrar la implementación de reglas de negocio, implementaremos un
software de gestión para una empresa de trenes. El software debe considerar las
siguientes reglas de negocio:
Para agregar un tren al sistema se debe solicitar en forma obligatoria el
número de tren, el nombre del conductor, el tipo de tren y el código de
trayecto (considere que existen actualmente 3 trayectos).
http://www.iplacex.cl/
-
13
www.iplacex.cl
Para identificar un trayecto como viable se debe obtener la suma de
ingresos en pasajes de cada tren del tramo y compararlo con la meta
semanal (30.000.000).
Crearemos un nuevo proyecto en NetBeans, utilizando el lenguaje Java para la
implementación del código.
Creación del Proyecto
En el menú de NetBeans, haz clic en File
→ New Project. En la ventana New
Project se selecciona Java en
Categories, y en Projects la opción Java
Application. Luego haz clic en Next.
En la siguiente ventana le damos el nombre EjercicioTrenes al proyecto y
establecemos la ruta donde se guardará.
Creación Clase Tren
Vamos a crear una clase Tren que
permita crear objetos con la información
relevante de cada tren.
Haz click derecho en el package
ejercicioTrenes -> New -> Java Class
En la ventana New Java Class, en Class
Name escribe Tren, luego presiona
Finish.
Definición de Atributos en la Clase Tren
http://www.iplacex.cl/
-
14
www.iplacex.cl
Generación de Constructores
Al interior de nuestra nueva Clase,
definiremos los atributos número
(int), conductor (String), tipo (int),
codigoTrayecto (int) y recaudacion
(int).
Generamos automáticamente el Constructor con parámetros para esta clase. Click
derecho al interior de la Clase → Insert Code... → Constructor En la ventana
Generate Constructor marcamos todos los tickets. Click en el botón Generate.
Generación de Accesadores y mutadores
Se generan
automáticamente los
accesadores y mutadores de
esta clase.
Para ello hacemos click
derecho al interior de la
clase → Insert Code... →
Getter and Setter...
Marcamos TODOS los tickets.
Creación de la Clase Empresa
http://www.iplacex.cl/
-
15
www.iplacex.cl
– Regla de Negocio 1
Crearemos una nueva clase llamada Empresa, que tendrá como atributo un
ArrayList de objetos de la Clase Tren. Click derecho en el package ejercicioTrenes
→ New → Java Class En la ventana New Java Class, en el campo Class Name
escribimos Empresa. Click en Finish.
Atributos ArrayList de la Clase Empresa
Vamos a definir tres atributos privados del tipo ArrayList de Tren en la clase
empresa. La inicialización del atributo ArrayList de Objetos se realiza en el
constructor.
Método Agregar Tren
Vamos a crear el método agregarTren, que dependiendo del código de trayecto se
agregará al ArrayList que le corresponda.
http://www.iplacex.cl/
-
16
www.iplacex.cl
De esta manera podremos agregar una cantidad dinámica de trenes a los
trayectos a los cuales pertenecen. Se observa que cada trayecto puede tener un
número diferente de trenes.
Método Cálculo de Viabilidad – Regla de Negocio 2
Creamos el método calcularViabilidad, donde se va a sumar la recaudación de
cada tramo y se va a comparar con la meta propuesta.
Si el monto recaudado por el tramo es inferior a la meta, entonces no es viable.
Caso contrario es viable.
Nótese que tenemos que usar un ciclo para cada ArrayList y luego comparar estos
montos con el parámetro meta.
http://www.iplacex.cl/
-
17
www.iplacex.cl
http://www.iplacex.cl/
-
18
www.iplacex.cl
BIBLIOGRAFÍA
1. Programación orientada a objetos con Java/ David J. Barnes, Michael Kölling.
ISBN13: 9788483223505. Pearson 2008.
2. JAVA para estudiantes/Douglas Bell, Mike Parr. ISBN13: 9786073205573.
Pearson 2011. Edición: 6
3. Java 7 / Herbert Schildt. ISBN13: 978-84-415-3067-6. Anaya 2012
4. Java 2 : Curso de Programación / Francisco Javier Ceballos Sierra.ISBN978-84-
9964-032-7 RA-MA, 2010
5. Java 2 : Manual de Usuario y Tutorial / Agustín Froufe Quintas. ISBN 978-
970- 15-1430-6 : Alfaomega, 2008
6. Head First Java/Kathy Sierra, Bert Bates. ISBN:978-0-596-00920-5. O'Reilly
Media
http://www.eumed.net/libros-gratis/ciencia/2012/12/arreglos-cadenas.html
https://universidad-de-los-andes.gitbooks.io/fundamentos-de-
programacion/content/Nivel3/4_ContenedorasDeTama%C3%B1oFijo.html
http://www.iplacex.cl/http://www.eumed.net/libros-gratis/ciencia/2012/12/arreglos-cadenas.htmlhttps://universidad-de-los-andes.gitbooks.io/fundamentos-de-programacion/content/Nivel3/4_ContenedorasDeTama%C3%B1oFijo.htmlhttps://universidad-de-los-andes.gitbooks.io/fundamentos-de-programacion/content/Nivel3/4_ContenedorasDeTama%C3%B1oFijo.html
-
19
www.iplacex.cl
CONCLUSIONES
De lo aprendido esta semana, podemos concluir que la implementación de las
reglas de negocio es lo que permite que una aplicación resuelva los reales
problemas de manipulación de datos e información de una organización.
Siendo una implementación de vital importancia, vimos que no requiere
herramientas nuevas, sino simplemente la forma de implementar un código ya
conocido.
http://www.iplacex.cl/
-
20 www.iplacex.cl
http://www.iplacex.cl/