Your SlideShare is downloading. ×

Modulo2 Arquitectura dotnet

1,005

Published on

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,005
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
3
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Arquitectura Aplicaciones
    Juan Pablo García González
    Juanpablo.garcia@datco.cl
    Software Developer Manager – Datco Chile
  • 2. Agenda
    Aplicaciones Web
    Richclientapplication
    Aplicaciones Móviles
    Referencias
  • 3. Aplicaciones web
  • 4. Aplicaciones WEB
  • 5. Consideraciones de Diseño
    • Dividir la aplicación lógicamente
    • 6. Use abstracciones para implementar bajo acomplamiento entre capas
    • 7. Entienda como los componentes se comunicaran unos con otros
    • 8. Considere el uso de Caching para minimizar las llamadas al servidor
    • 9. Considere el uso de «Logging» e «instrumentación»
    • 10. Considere la autentificación de usuarios a través de los límites de confianza
    • 11. No pase datos sensibles en texto plano por la red
    • 12. Diseñe su aplicación Web para que corra con privilegios mínimos
  • Problemas específicos de diseño
  • 13. Problemas específicos de diseño
  • 14. Problemas específicos de diseño
  • 15. Consideraciones por Capas
    Capa de presentación
    Capa de Negocios
    Capa de Datos
    Capa de servicios
  • 16. Consideraciones de Testing
    • Definición clara de inputs y outputs de las capas de la aplicación
    • 17. Considere el uso de MVC o MVP, esto permite el uso de pruebas unitarias
    • 18. Separa la implementación de lógica de negocio de Workflows, simplifica las pruebas
    • 19. Diseño componentes desacoplados que puedan ser probados por separado
    • 20. Use Logging y tracing que ayuden a detectar errores
    • Para diferentes tipos de aplicaciones
    • 21. Web browser  ASP.NET
    • 22. Web browser sin Reload  ASP.NET + Ajax
    • 23. Web browser con Rich Media  ASP.NET + Silverligth
    • 24. data driven Web application ASP.NET DynamicData
    • 25. test-drivendevelopmentapproachASP.NET MVC
    • 26. Si se usa ASP.NET considere el uso de Master Page para consistencia
    Consideraciones Tecnológicas
  • 27. Consideraciones de «Deploy»
    NondistributedDeployment
    • Para aplicaciones pequeñas
    • 28. No escalables
    • 29. Cuando no se necesita compartir la lógica de negocio
  • Consideraciones de «Deploy»
    DistributedDeployment
    • Para un alto desempeño
  • Consideraciones de «Deploy»
    Load Balancing
    Tolera fallas
    Se necesita manejar las sesiones de manera consistente
    Puede ser por hardware o Windows Network Load Balancing (NLB)
    Mejorsi se usa un clsuter SQL
  • 30. ASPNET MVC
    Demo
  • 31. richclientapplication
  • 32. richclientapplication
  • 33. Consideraciones de Diseño
    Selecciones la tecnología adecuada (Windows Forms, WPF, XAML Browser Applications (XBAP), OBA)
    Separe la lógica de presentación de las interfaces de implementación (ejemplo PresentationModel o SupervisingPresenter)
    Identifique las tareas de presentación y los flujos de presentación
    Separe la aplicación en capas
    Reuse los componentes comunes de la presentación (ej: bibliotecas)
    Si usa servicios remotos manténgalos con bajo acoplamiento
    Reduzca las llamadas a «remotelayers»
  • 34. Cuestiones especificas del diseño
  • 35. Cuestiones especificas del diseño
  • 36. Cuestiones especificas del diseño
  • 37. Cuestiones especificas del diseño
  • 38. Cuestiones especificas del diseño
  • 39. Consideraciones de Seguridad
    Determine el mecanismo adecuado de autentificación de usuarios
    Tenga en cuenta la autentificación offline
    Considere validar los inputs de los usuarios y de los servicios que consume
    Considere proteger la data local.
    Considere implementar Logging y auditoria
  • 40. Consideraciones manejo Datos
  • 41. Consideraciones OCC
    Offline/OccasionallyConnected
    Data centric.
    Serviceoriented.
  • 42. Consideraciones Tecnológicas
    Elija la tecnología correcta
    WPF  aplicaciones ricas en multimedios
    Windows Forms aplicaciones de negocios, alto desempeño
     XAML Browser Application(XBAP)aplicaciones que se descargan y ejecutan con el browser
    Office Business Applications (OBA) aplicaciones basadas en documentos y reportes
  • 43. Consideraciones Deployment
    Stand-aloneDeployment
  • 44. Consideraciones Deployment
    Client/Server Deployment
  • 45. Consideraciones Deployment
    N-TierDeployment
  • 46. Técnicas de Deployment
    Click Once deployment
    XCOPY deployment
    Windows Installer (.MSI) package
    XBAP package
  • 47. WCF, windowsForm
    DEMO
  • 48. Aplicaciones Móviles
  • 49. Aplicaciones Móviles
  • 50. Consideraciones Generales
    Decida que clase de aplicación construye: richclient, Web client o rich Internet application (RIA)
    Determine que tipo de dispositivo usará y sus recursos
    Considere los escenarios ocasionalmente conectados y anchos de banda limitados
    Defina la UI adecuada para el dispositivo
    Defina los layer adecuados para su aplicación, pensando en la reutilización y mantenciones
  • 51. Consideraciones especificas
  • 52. Consideraciones especificas
  • 53. Consideraciones especificas
  • 54. Consideraciones especificas
  • 55. Consideraciones especificas
  • 56. Consideraciones especificas
  • 57. Consideraciones tecnológicas
    Microsoft Silverlight for Mobile
    .NET Compact Framework
    Windows Mobile
    Mobile Device Manager (MDM)
    Windows Embedded
  • 58. Consideraciones de Deployment
    Microsoft Exchange ActiveSync® technology using a Windows Installer file (MSI).
    Over the air, using HTTP, SMS, or CAB files
    Mobile DeviceManager–basedCAB o MSI
  • 59. App Móvil
    Demo
  • 60. Referencias
    Microsoft ApplicationArchitecture Guide, 2nd Edition
    http://msdn.microsoft.com/en-us/library/dd673617.aspx
    Patterns of Enterprise Application Architecture. Addison-Wesley, 2002.
    http://martinfowler.com/eaaCatalogs
  • 61. Arquitectura Aplicaciones
    Juan Pablo García González
    Juanpablo.garcia@datco.cl
    Software Developer Manager – Datco Chile

×