Aplicaciones móviles para ambientes descentralizados

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Favorites, Groups & Events

    Aplicaciones móviles para ambientes descentralizados - Presentation Transcript

    1. Aplicaciones móviles en ambientes descentralizados vladimir dot calderon at infonexo dot net Rev. 00 03 – Junio - 2009
    2. Problema
      • En un ambiente descentralizado (muchas sucursales gemelas o no), obtener un reporte general de ventas de toda la organización en el teléfono celular.
    3. Consideraciones
      • En ambientes descentralizados se pueden tener estructuras como la siguiente:
      Oficina central Sucursal 1 Sucursal 2
    4. Consideraciones 2
      • En el caso general, tenemos los siguientes problemas
        • Sucursales grandemente separadas, por lo tanto comunicación esencialmente por Internet (más barato)
        • Conectividad no fiable entre sucursales y central
        • Sistemas potencialmente diferentes entre sucursales (piense en las sucursales como empresas distintas de una mega corporación)
        • Seguridad en el acceso a la información por parte de los participantes
    5. Propuesta de la solución
      • Ataquemos cada una de las consideraciones
      • Seguridad:
        • Se puede realizar la comunicación por canales seguros tipo HTTPS o por medio de VPNs, pero…
        • No se puede contar todo el tiempo con una conectividad fiable ni tampoco con una conectividad que se vea disminuida por los protocolos pesados de seguridad.
        • Solución propuesta: conexión a partir de mensajes con servicios web (aprovechando lo stateless de http)
        • TODOS los mensajes deben tener un argumento que sea un desafío construido a partir de los demás argumentos y un secreto.
    6. Solución: Seguridad
      • Los stubs en las sucursales serán entones del estilo:
      • Donde activador deberá ser algo como:
      • El implementador debe cuidar la manera de administrar el secreto
      public ResumenFacturacion ventas( int nocia, DateTime fechaIni, DateTime fechaFin, string activador) activador = sha1(nocia + fechaIni + fechaFin + “s3cr3t0”)
    7. Solución: Conectividad
      • Se trata de obtener información de las sucursales. Información que las sucursales generan
        • Aplicando OBSERVER, la sucursal comunicará sus nuevos registros a la central, así evitamos espera activa.
        • Crear una tabla de información que registre el estado de la última comunicación y que pida de nuevo la misma cuando ésta esté corrupta (inspirándose del protocolo ventana TCP)
        • Stubs en la central deben tener el mismo mecanismo de seguridad.
        • En caso de querer un poco de obfuscación, los argumentos pueden ir como complejos objetos en forma de XML serializados en un string.
    8. Conectividad
      • Esquema obfuscación
      Oficina central Encabezado Detalle XML STRING Serializar bool f(string xml, string activador) Llama servicio Sucursal 1
    9. Solución: Sistemas distintos
      • Una siempre buena solución en el tema de coordinar la información entre sistemas distintos es el establecimiento de interfases
      • Se deben definir al principio de la comunicación y al final de la comunicación.
        • Mientras más homogéneas las sucursales esto se desarrolla mucho más rápido.
      • Por si acaso: consiste en definir:
        • Estructuras XML de comunicación a los servicios web
        • La declaración de las funciones que se deberían implementar
    10. Implementando
      • Se debe tener cuidado de definir claramente y desde el principio qué servicios van de dónde a dónde.
        • Crucial para definir las tablas que tienen la información (las definimos en la sucursal, o en la central)
      • Establecer contratos de servicios con el departamento de sistemas para conocer los límites aceptables en cuanto a conectividad y otros
        • Esto para poder responder a: Cuándo es un ERROR?
      • No olvidarse de atributos de calidad: logging, buenas prácticas, revisión de pares, etc, etc…
    11. Resultado
      • Se obtienen los datos a partir de la central, la cual a su vez pide los datos (si necesario) de las sucursales

    + vladimir calderonvladimir calderon, 5 months ago

    custom

    164 views, 0 favs, 0 embeds more stats

    Un ejercicio para telefonía móvil de centralizaci more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 164
      • 164 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 6
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories