© 2005 avanade uk ltd. all rights reserved..net 3.0 in the enterprise app platt conference –...

33
© 2005 Avanade UK Ltd. All rights reserved. .net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006, All Rights Reserved.

Upload: brennen-baisden

Post on 31-Mar-2015

217 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

© 2005 Avanade UK Ltd. All rights reserved.

.net 3.0 in the Enterprise

App Platt Conference – Oslo, april 2007

Inge Stubdal, arkitekt

© Avanade Norway 2006, All Rights Reserved.

Page 2: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

© 2006 Avanade Inc. All rights reserved. The Avanade name and logo are registered trademarks in the US and other countries.

Avanade – Who we are

The only global IT solutions consultancy

100% dedicated to using the Microsoft platform to help enterprises achieve

profitable growth.

Vi lodder ut en XBOX 360

Sjekk vår stand

Page 3: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

Agenda

.net 3.0 WCF WPF WF CardSpace Q&A

Page 4: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

.net 3.0

“Marketing messed it up. Again.”

Page 5: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

.net 3.0 – ny funksjonalitet på .net 2.0

Q: What is the .NET Framework 3.0 (formerly WinFX)?

A: The .NET Framework 3.0 is Microsoft's managed code programming model. It is a superset of the .NET Framework 2.0, combining .NET Framework 2.0 components with new technologies

Q: How does the .NET Framework 3.0 relate to the .NET Framework 2.0?

A: The .NET Framework 3.0 is an additive release to the .NET Framework 2.0. There are no changes to the version of the .NET Framework 2.0 components included in the .NET Framework 3.0.

Page 6: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

.net 3.0 – ny funksjonalitet på .net 2.0

Q: Why is the .NET Framework 3.0 a major version number of the .NET Framework if it uses the .NET Framework 2.0 runtime and compiler?(svar utelatt med vilje)

Q: Do I need to do any application compatibility testing for my .NET Framework 2.0 applications?

A: You don’t need to do any additional testing for your .NET Framework 2.0 applications when you install the .NET Framework 3.0.

Kilde:http://msdn2.microsoft.com/en-us/netframework/aa663314.aspx

Page 7: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

Kampanje for å endre navnet tilbake

To:  Microsoft Dear Jason Zander and whom ever it may concern,

WinFX was renamed to .NET 3.0. This decision was made without any community feedback, which is uncharacteristic of Microsoft’s recent openness to community input.

Not only is “.NET 3.0” a misnomer, it throws a wrench in the .NET Framework, likely jamming future versions. It is also a severe inconvenience to developers, especially newcomers.

We ask that this short-sighted decision be turned around before the first release of the framework for its own sake as well as the sake of developers.

I state eight reasons to revert to the old name of WinFX. The terminology used here assumes that you’ve read Jason’s blog entry here: http://blogs.msdn.com/jasonz/archive/2006/06/13/630066.aspxKilde: http://www.petitiononline.com/mod_perl/signed.cgi?winfx 952 signert pr. 10.04.07

Page 8: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,
Page 9: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

.net 3.0 Inneholder

Windows Communication FoundationWindows Presentation FoundationWindows Workflow FoundationWindows CardSpace

Page 10: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

Windows Communication Foundation

Page 11: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

UtfordringenUtfordringen

Løsninger blir stadig knyttet sammen ,

… men det er vankselig å lage sammenkoblede systemer !

1. Forvirrende antall verktøy - delsvar2. Tekniske utfordringer

Arkitekturmessig mismatchDårligere sikkerhet, dårligere stabilitetVanskeligere å teste og debuggeStadig større krav til høyere ytelseUtviklere har hodet over vannetLøsningene beveger seg saaaakte fremover

Page 12: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

20,379 lines security

5,988 lines reliable

messaging25,507 lines transaction

s

Total lines 56,296

4,442 lines infrastruct

ure

class HelloService { [WebMethod] public String Hello(String Greeting) {

X509CertificateCollection collection = new X509CertificateCollection();IntPtr blob = Marshal.AllocHGlobal(Marshal.SizeOf( typeof(CRYPTOAPI_BLOB))); IntPtr data = (IntPtr)((int)blob + Marshal.SizeOf(typeof(CRYPTOAPI_BLOB)));…

SeqAckRange range = new SeqAcknRange(id, low, high );SeqAckRange[] ranges = { range };ReliableQueue.ProcessAcks( ranges );…

hr = pITxDispenser->BeginTransaction (NULL, ISOLATIONLEVEL_SERIALIZABLE, 0, pITxOptions, &pITransaction);…

return Greeting; }}

Development ProductivityUsing Visual Studio .NET 2003

Page 13: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

Development ProductivityUsing Visual Studio .NET 2003 and WSE

10 lines security

1,804 lines reliable

messaging

25,507 lines transactions

Total lines 27,321

class HelloService { [WebMethod] public String Hello(String Greeting) {

foreach ( SecurityToken tok in requestContext.Security.Tokens { X509SecurityToken token = tok as X509SecToken }

… SeqAckRange range = new SeqAcknRange(id,low,high ); SeqAckRange[] ranges = { range }; ReliableQueue.ProcessAcks( ranges ); …

hr = pITxDispenser->BeginTransaction (NULL, ISOLATIONLEVEL_SERIALIZABLE, 0, pITxOptions, &pITransaction); …

return Greeting; }}

Page 14: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

Development ProductivityUsing Visual Studio 2005 and WCF

1 lines security

1 lines reliable

messaging

1 lines transactions

Total lines 3

[ServiceContract(SecureChannel, SecurityMode =“Windows")][Reliability(Guarantees.ExactlyOnce | Guarantees.InOrder)][ServiceContract]class HelloService { [ServiceOperation(TransactionFlowAllowed = true)] String Hello(String Greeting) { return Greeting; }

Page 15: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

Løsning: WCF

Alle kommunikasjonsscenarioer er “like”

- Ett API, som brukes på samme måte alle steder

Den andre part og kommunikasjonsform abstrahert ut av koden- Kommunikasjonen abstrahert vekk fra forretningslogikken

Forretningslogikk I kode Kommunikasjon i

konfigurasjonsfiler

Page 16: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

WCF Arkitektur

Primitive Message Exchange Patterns: Request/Reply, Duplex, One-way

Protocols: WSDL. WS-Policy, and WS-MetadataExchange WS-Security 1.0 & 1.1 and WS-Trust WS-Transaction/Coordination WS-Reliable Messaging

Durable with MSMQ; forthcoming adapters for MQ-Series and Tibco and others Add others, your own

Encodings: SOAP 1.1 & 1.2 MTOM GZip Binary Add your own

Transports: HTTP, TCP, MSMQ, Named Pipes, UDP Add your own

Behaviors: Instancing, concurrency, etc. Add your own

Page 17: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

Copy slides

Use this type of template for your standard copy slides.

Use the design templates to apply any combination of colour and icon to a copy slide.

As shown here, the colour and icons at the top of the copy slide should match the colour and icons of the most recent section header slide.

The colour of the headings should match the colour at the top of the copy slide (and the most recent section header slide).

Note all sub-headings are sentence case, e.g. “The cat on the mat”.

Page 18: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

Windows Presentation Foundation

Page 19: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

Copy slides

Use this type of template for your standard copy slides.

Use the design templates to apply any combination of colour and icon to a copy slide.

As shown here, the colour and icons at the top of the copy slide should match the colour and icons of the most recent section header slide.

The colour of the headings should match the colour at the top of the copy slide (and the most recent section header slide).

Note all sub-headings are sentence case, e.g. “The cat on the mat”.

Page 20: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

User Experience Challenges

Page 21: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

Declarative Programming

Built in controls have hard-coded look

Doing something custom takes lots of extra code WinXP Start Button team:

4 Developers, ~6 Months Dev Time

Page 22: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

WPF/E

Page 23: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

Windows Workflow foundation

Page 24: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

Copy slides

Use this type of template for your standard copy slides.

Use the design templates to apply any combination of colour and icon to a copy slide.

As shown here, the colour and icons at the top of the copy slide should match the colour and icons of the most recent section header slide.

The colour of the headings should match the colour at the top of the copy slide (and the most recent section header slide).

Note all sub-headings are sentence case, e.g. “The cat on the mat”

Page 25: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

EX: Check InventoryEX: Escalate To Manager

What Is A Workflow?

A Set Of Activities A Set Of Activities That Coordinates People That Coordinates People

And / Or Software...And / Or Software...

Like a flowchart…. Like a flowchart…. Or a state diagram…. Or a state diagram….

Sequential Workflow

Sequential structure Prescribes processing order

Step1

Step2

State MachineWorkflow

External events drive processing order

State2

State1Event

Event

Rules + data state drive processing order

Rules-driven Activities

Rule1

Rule2

Data

Step2

Step1

Page 26: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

Workflow and BizTalk

MessagingMessaging

DesigDesignn

ToolsTools

BusinesBusinesss

ActivityActivityMonitorMonitor

AndAndAdminAdminToolsTools

OrchestratioOrchestrationn

TransformatiTransformationon

AdaptersAdapters

BizTalkBizTalk

AcceleratorsAccelerators

Premium BPM serverPremium BPM server

Distinct server productDistinct server product

Use in B2B, EAI, BPM scenariosUse in B2B, EAI, BPM scenarios

Deployable solutionsDeployable solutions

Manageability, Scale-outManageability, Scale-out

WorkflowWorkflow

Future version will migrate to Future version will migrate to Windows Workflow Foundation for Windows Workflow Foundation for orchestrationorchestration

WinFXWinFX

Visual Studio DesignerVisual Studio Designer

Windows Workflow Windows Workflow FoundationFoundation

Workflow frameworkWorkflow framework

Future technology Future technology

Broad set of scenarios Broad set of scenarios

Used to build solutionsUsed to build solutions

Enables manageability and scale-Enables manageability and scale-out in solutionsout in solutionsUse for building workflow into Use for building workflow into apps or workflow enabled serversapps or workflow enabled servers

Page 27: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

Windows CardSpace

Section sub title / description

Page 28: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

Microsoft Online Identity 1.0

Page 29: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

The Laws of IdentityAn Industry Dialog

1. User control and consent

2. Minimal disclosure for a defined use

3. Justifiable parties

4. Directional identity

5. Pluralism of operators and technologies

6. Human integration

7. Consistent experience across contexts

Join the discussion at www.identityblog.com

Page 30: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

Metasystem Players

Relying PartiesRequire identities

SubjectsIndividuals and other

entities about whom claims are made

Identity Providers

Issue identities

Page 31: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

Canonical Scenario

Front EndWeb Site

(Resource)STS

Web Site (e.g amazon.com) Redirect – Login Page

HTTP/GET (Protected Page) 1

Login Page (HTML) with CardSpace tags + SecPolicy

HTTP/GET (Login Page) 2

4

CardSpace lights upUser selects card

Identity Provider (Managed or Self)

STSSTS

5

Getting token viaWS-Mex and WS-Trust

IE w/ CardSpace

Relying Party

6Token via WS-Trust/RST

Cookie via WS-Trust/RSTR

7HTTP/GET|POST Target Page + Cookie

3WS-Mex

Page 32: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

Referanser

Jason Zander, GM .Net Framework Blogs on Naming: http://blogs.msdn.com/jasonz/archive/2006/06/13/630066.aspx

.net 3.0 Versioning and Deployment: http://msdn2.microsoft.com/en-us/netframework/aa663314.aspx

WCF lvl200 intro: http://msevents.microsoft.com/cui/WebCastEventDetails.aspx?culture=en-US&EventID=1032289498&CountryCode=US

Pro WCF bok: http://tinyurl.com/2meycl

Page 33: © 2005 Avanade UK Ltd. All rights reserved..net 3.0 in the Enterprise App Platt Conference – Oslo, april 2007 Inge Stubdal, arkitekt © Avanade Norway 2006,

Referanser II

Artikkel om Passport vs Cardspace: http://www.nds.ruhr-uni-bochum.de/lehre/seminar/SS06/Goldack_PassportCardSpace.pdf