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

Arquitectura

Embed Size (px)

DESCRIPTION

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

Citation preview

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)