Arquitectura

29
Arquitectura N-Layer DDD Propuesta de arquitectura software basada en aplicación web dentro de proyecto aeronáutico. Antonio Acevedo

description

Presentación realizada para mostrar arquitectura propuesta para proyecto aeronáutico.

Transcript of Arquitectura

Page 1: Arquitectura

Arquitectura N-Layer DDDPropuesta de arquitectura software basada en aplicación web dentro de proyecto aeronáutico.

Antonio Acevedo

Page 2: Arquitectura

Índice1. Esquema básico de la arquitectura2. Tecnologías back-end

Entity Framework (DDD) Capa aplicación WCF

3. Tecnologías front-end Javascript (jQuery & Ajax) Javascript (Local storage) HTML5 & CSS3 Google Charts HighCharts

4. Otros VS2012 Scrum Storyboarding QA Feedback Integración Continua

5. Entorno Java6. Volviendo al principio…7. Referencias

Page 3: Arquitectura

Visión general

Page 4: Arquitectura

Tecnologías back-end

•Entity Framework

▫Abstracción de la BBDD

▫Abstracción de las consultas

▫Model-first vs Code-First

▫Fluent API vs Annotations

▫Contexto de persistencia (transaccionalidad)

Page 5: Arquitectura

Tecnologías back-end

•Entity Framework (contexto y búsqueda)

Page 6: Arquitectura

Tecnologías back-end

•Entity Framework (inserción y borrado)

Page 7: Arquitectura

Tecnologías back-end

•Entity Framework (Annotations)

Page 8: Arquitectura

Tecnologías back-end

•Entity Framework (Fluent API)

Page 9: Arquitectura

Tecnologías back-end

•Capa aplicación

▫Autenticación▫Autorización▫Excepciones▫Logging▫Concurrencia▫Conversiones DTO POCO

▫ Objetos cliente: Data transfer object (DTO)▫ Objetos sistema: Plain old c# object (POCO)

Page 10: Arquitectura

Tecnologías back-end

•WCF▫Comunicación RESTFul cliente servidor.

▫ Representational State Transfer (CRUD)▫ POST (Create)▫ GET (Read)▫ PUT (Update)▫ DELETE (Delete)

Page 11: Arquitectura

Tecnologías back-end

•WCF▫Formato JSON (Javascript Object Notation).

Page 12: Arquitectura

Tecnologías front-end

•Javacript (jQuery & Ajax)

▫Eventos▫DOM▫Callbacks▫Asíncrono

Page 13: Arquitectura

Tecnologías front-end

•Javacript (local storage)

▫Almacenamiento de sesión en cliente

▫Formato key-value

Page 14: Arquitectura

Tecnologías front-end

•HTML5 & CSS3

▫Vistas + semántica▫Cross-browsing

(multiplataforma)▫Video & audio tags

▫Responsive design▫ Liquid Layout▫ Media Queries

Page 15: Arquitectura

Tecnologías front-end

•HTML5 & CSS3

Page 16: Arquitectura

Tecnologías front-end

•Google Charts Tools

Page 17: Arquitectura

Tecnologías front-end

•HighCharts

Page 18: Arquitectura

Otros

•VS2012 (general)

▫Windows 8▫Ecosistema completo

▫ Metodología SCRUM▫ Especificación de requisitos▫ Storyboarding▫ Desarrollo▫ Versionado▫ QA

Page 19: Arquitectura

Otros

•VS2012 (SCRUM)

Page 20: Arquitectura

Otros

•VS2012 (SCRUM)

Page 21: Arquitectura

Otros

•VS2012 (SCRUM)

Page 22: Arquitectura

Otros

•VS2012 (Storyboarding)

Page 23: Arquitectura

Otros

•VS2012 (Quality Assurance)

Page 24: Arquitectura

Otros

•VS2012 (Quality Assurance)

Page 25: Arquitectura

Otros

•Integración continua (Hudson + Sonar)

- Cada x tiempo (horas)- Descargarse fuentes (SVN).- Compilarlo.- Ejecutar tests- Generar informes.

Page 26: Arquitectura

Entorno JavaASPECTO .NET JAVA

Lenguaje dedesarrollo C# Java

ORM Entity FrameworkJava Persistence

API(JPA)

Webservices WCF 4.0,WebAPI

Java Api for RESTFul Service(JAX-RS)

IDE VS2010/VS2012 Netbeans/Eclipse

Gestión deversiones TFS, Git, SVN… SVN, Git,

Mercurial…

Pruebas NUnit JUnit

Servidores IIS Apache/GlassFish/JBoss

Page 27: Arquitectura

Volviendo al principio…

Page 28: Arquitectura

Referencias• http://

download.microsoft.com/download/D/3/6/D3619F8C-A47F-43A3-9C9F-839F93595FE0/guia_arquitectura_n-capas_orientada_al_dominio_con_net_4_0-microsoft_architecture.zip

• http://msdn.microsoft.com/es-ES/data/ef

• http://jquery.com/

• http://diveintohtml5.info/

• http://twitter.github.com/bootstrap/

• https://developers.google.com/chart/

• http://www.proyectalis.com/wp-content/uploads/2008/02/scrum-y-xp-desde-las-trincheras.pdf

• http://www.apress.com/9781430233688

• http://channel9.msdn.com/Blogs/channel9spain/Windows-8-para-desarrolladores-de-C-y-XAML-Introduccin-al-entorno-de-desarrollo-Visual-Studio-2012--

• http://www.websphereusergroup.org.uk/wug/files/presentations/26/43_JPA-JAX-RS-Overview.pdf

Page 29: Arquitectura

Arquitectura N-Layer DDDPropuesta de arquitectura software basada en aplicación web dentro de proyecto aeronáutico.

Antonio Acevedo

Gracias por vuestra atención S2012 (QA)