algoritmos y estructuras de datoscursos.iplacex.cl/ced/aed3008/s5/me_5.pdfalgoritmos y estructuras...

20
ALGORITMOS Y ESTRUCTURAS DE DATOS UNIDAD Nº III Testing de aplicaciones [Escribir texto]

Upload: others

Post on 31-Jan-2021

6 views

Category:

Documents


1 download

TRANSCRIPT

  • 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/