Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.

19
Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture

Transcript of Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.

Page 1: Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.

Alcatel-Lucent CDCWorkshop, Coaching & Knowledge Transfer

Architecture

Page 2: Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.

Layered Architecture

Page 3: Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.

Layered Architecture

Multi layered application Logical separation

Data access layer

Service layer

Business layer

Presentation layer

Aspx page

Controller

Aspx page

Controller

Aspx page

Controller

Aspx page

Controller

Dispatcher

Request

Response

Request Processor

Request Handler Request Handler Request Handler Request Handler

Response

Request

Business Action

Business Action

Validator

Validator

Repository Repository Repository Repository

Database

WCF

ReEntity Framework

Page 4: Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.

Layered Architecture

Multi tiered application Physical separation

Page 5: Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.

Presentation Layer

ASP.NET 3.5 with AjaxToolkit Model – View – Controller Model:

System data Business logic (through the service layer)

View: Displays data to the user Asks for input

Controller: Client side logic Generates requests, and handles responses using the Dispatcher

Page 6: Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.

Service Layer

Distributable Reusable Exposes business logic to clients Using Windows Communication Foundation Other communication frameworks are

possible as well

Page 7: Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.

Service Layer Components

Request Processor Processes all requests, calls specific handlers and

returns results Request Handler

Handles requests, calls actions and/or validators in the business layer and returns a response

Page 8: Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.

Business Layer

Business Action Perform some specific business logic

Validator Validates input

Calls the repositories to get / persist data Converts the full blown entities to flat Data

Transfer Objects

Page 9: Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.

Data Access Layer

Repositories Single access point to the database Entity Framework for Object Relational

Mapping Tables are mapped Difficult database interaction using mapping

Stored Procedures Returns full blown entities

Page 10: Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.

Entity Framework

ORM from Microsoft Layer on top of ADO.NET Generated model Full blow entity model Easy extendable:

Partial classes Extension methods

Page 11: Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.

Technology

Page 12: Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.

ASP.NET

ASP.NET used for front end Ajax used for interactive web pages Only default ASP.NET controls and custom

controls No 3rd party

Page 13: Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.

C#

All code written in C# 3.5 SP1 Project done with Visual Studio 2008

Page 14: Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.

WCF

Windows Communication Foundation for service communication

Used HTTP binding

Page 15: Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.

Core Ideas

Page 16: Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.

Level Of Abstraction

Enables Loosely Coupled code Communicating through interfaces or base

classes makes it possible to modify behavior without changing client code.

Increases testability Enables Dynamic Aspect Oriented

Programming

Page 17: Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.

Separation Of Concerns

Each class does one thing, and only one thing A class should have only one reason to change Behavior should overlap as little as possible

Page 18: Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.

Hands On!

Page 19: Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.

Contact

Item SolutionsPlantin en Moretuslei 1552140 Borgerhout +32 3 236 64 03 [email protected]

SpeakerKristof Rennen [email protected]