• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Rolando Sandoval   Win Fx The Real Thing
 

Rolando Sandoval Win Fx The Real Thing

on

  • 262 views

Una presentacion que dí a principios de año sobre wn WINFX

Una presentacion que dí a principios de año sobre wn WINFX

Statistics

Views

Total Views
262
Views on SlideShare
260
Embed Views
2

Actions

Likes
0
Downloads
0
Comments
0

1 Embed 2

http://www.linkedin.com 2

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Speaker Notes This 1-hour presentation provides a technical overview of the Windows Communication Foundation, previously codenamed “Indigo.” This presentation is targeted primarily at developers and architects. By the end of this presentation, you will understand the what, why, and how of WCF: What WCF is and what it provides developers, Why Microsoft is building it (the challenges we hope to overcome with WCF), and How WCF works, how it interacts with other Microsoft products (including the .NET Framework 2.0, Visual Studio 2005, and BizTalk Server), and how you can take advantage of WCF when building connected systems. Transition to next slide: Let’s begin by discussing the motivation behind WCF. 11/25/09 02:18 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. Next Generation Business Solutions Platform Strategy Review
  • InfoCard, is part of WinFX … built on .NET.
  • Speaker Notes This 1-hour presentation provides a technical overview of the Windows Communication Foundation, previously codenamed “Indigo.” This presentation is targeted primarily at developers and architects. By the end of this presentation, you will understand the what, why, and how of WCF: What WCF is and what it provides developers, Why Microsoft is building it (the challenges we hope to overcome with WCF), and How WCF works, how it interacts with other Microsoft products (including the .NET Framework 2.0, Visual Studio 2005, and BizTalk Server), and how you can take advantage of WCF when building connected systems. Transition to next slide: Let’s begin by discussing the motivation behind WCF. 11/25/09 02:18 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. Next Generation Business Solutions Platform Strategy Review
  • The world we live in is more connected than ever before, and the imperative to connect spans the boundaries of platforms and geography. This need to connect was once limited to communication within a business, but now it’s expanded beyond the walls of the enterprise. Connected systems today must support all sorts of scenarios, whether it’s corporations communicating with partner businesses or mobile employees logging into corporate servers. In fact, sometimes the scenarios don’t even involve a business – connection is as varied as families sharing pictures or teenagers IMing. But building distributed applications that support these scenarios is difficult, particularly since each scenario imposes different constraints on the application. For corporations communicating across platforms, interoperability might be the most important requirement. For mobile employees using corporate resources over insecure networks, security might be most important. But for other users, like families videoconferencing, interoperability and security might be less important than performance, for a faster frame rate. 11/25/09 02:18 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. Next Generation Business Solutions Platform Strategy Review
  • We hear similar questions about these problems from developers building distributed applications everywhere. They need to know how to develop interoperable applications, so that their applications can communicate with other applications on partner platforms. They need to send messages securely and reliably, so that their users’ data is protected and guaranteed to be received. And they want to know how they can use the principles of service-orientation to build a flexible application that changes gradually, to adapt to their changing business needs. These are all problems that have nothing to do with business logic, and these are the issues that WCF is designed to solve. That way you as developers can focus on what’s really important – the business logic of your application. Transition : Given that, what exactly is WCF? 11/25/09 02:18 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. Next Generation Business Solutions Platform Strategy Review
  • WCF is the unified framework for rapidly building secure, reliable, interoperable, service-oriented applications. It’s a set of classes that extends the .NET Framework 2.0 that you can use to take care of the dirty work of building distributed systems. WCF is a part of WinFX, the next-generation programming model for Windows Vista and beyond. Transition : Before we dive into WCF, let’s do a quick demo to see how WCF works in practice.
  • Speaker Notes WCF is designed around three pillars or design goals. We’ll drill into each of them in this presentation. The first design goal is productivity . When we talk about productivity, we’re talking about bringing together the various technologies available today for building distributed applications (COM+ and .NET Enterprise services, MSMQ, .NET Remoting, ASP.NET Web Services, Web Services Enhancements (WSE)) into a single, unified programming model. Why is this important? First, it reduces complexity by allowing us to focus on a single programming model rather than learn multiple programming models. Second, it allows us to combine the functionality of today’s technologies in ways that we can’t today. Finally, it allows us to use a single programming model for building distributed applications that communicate with one another on a single machine, across multiple machines, and across the Internet. The second design goal is interoperability . We talk about interoperability on two different pivots. First, WCF enables you to build services that use advanced Web services protocols (WS-*) by default, to enable your application to communicate with other applications on partner platforms. Second, we built WCF to provide a smooth integration and upgrade story for the distributed applications you’ve built on today’s Microsoft technologies (WSE, ASMX, .NET Enterprise Services, System.Messaging, .NET Remoting). Why are interop and integration important? First, the ability to communicate with applications running on other platforms provides you with the flexibility you need when working in a heterogeneous environment. Second, the ability to communicate with existing applications protects your investments and provides you with an optional, incremental upgrade path to WCF. The third design goal is all about service orientation . WCF provides developers with a highly productive programming model for building service-oriented applications. At Microsoft, we think of service-orientation as a best practice for building distributed systems that involves developing loosely-coupled services that can be independently managed, updated, and deployed, so that your application as a whole is flexible and changes gradually. Transition to next slide: Let’s talk about these 3 concepts in more detail. 11/25/09 02:18 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. Next Generation Business Solutions Platform Strategy Review
  • Service orientation has come to have a number of meanings in the industry today. To us at Microsoft, it’s a set of best practices for building distributed systems. 11/25/09 02:18 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. Next Generation Business Solutions Platform Strategy Review
  • Speaker Notes We at Microsoft see service orientation as not a revolution, but an evolution in the way we create abstractions in code. For years, software development has focused on how to best reuse the code that we write. Ultimately, people and businesses want long-term return on their short-term investments in code. We’ve seen 3 waves of advancement in this movement in recent decades: 1980s and Object-Orientation: Object-oriented development promised the idea of building reusable abstractions (called classes) that we could then inherit from in order to reuse the base class functionality. This shift from simple procedural-based code brought with it a lot of benefits including polymorphism (the ability to dynamically bind types at runtime), abstractions that included both state and behavior, and encapsulation (controlling which parts of the code the external world can access). However, object-orientation by itself didn’t facilitate the dynamic evolution of software at runtime. Once an application was built, it was static. There wasn’t an easy way to infuse new code into an application. 1990s and Components: Component-based development helped us overcome this challenge. It forced the developer to think about the external facing interface of the application. This enabled us to build systems that dynamically load and bind to new functionality at runtime (an application discovers new components after it has been built) and introduced the notion of an application as a growing/evolving organism. To facilitate dynamic loading, we saw a big emphasis on runtime metadata. In the past, you couldn’t easily discern application capabilities since there was very little/rudimentary metadata information stored as part of the application. Whereas C and C++ programs from 1980s were these relatively opaque collections of code, component-based applications of the 1990s enabled runtime inspection of code to determine what a particular component supported. This introduced the notion of self-describing systems. But while this metaphor worked really well on a single machine (using method invocation on an object reference), we hit scaling problems when we tried to stretch it out and apply it as the substrate for distributed software integration (across machines, etc). 2000s and Service-Orientation – With service orientation, we retain the benefits of self-describing applications, explicit encapsulation, and dynamic loading of functionality. What changes is the metaphor with which we accomplish it. Instead of using method invocation on an object reference, we shift the conversation to that of message passing – a proven metaphor for scalable distributed software integration. In addition, to support dynamic loading of service-based functionality, we use schema to describes the structure of messages, behavioral contract to define acceptable message exchange patterns, and policy to define service semantics. WCF facilitates using these service-oriented constructs to build flexible, adaptable applications. Transition to next slide: We’ve isolated four concrete tenets that define service orientation. 11/25/09 02:18 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. Next Generation Business Solutions Platform Strategy Review
  • Speaker Notes Tenet 1: Boundaries are Explicit. Based on the underlying concept of encapsulation, this tenet specifies the publishing and consumption of functionality as sets of services that abstract their underlying implementation. With WCF, the attribute-based programming enables developers to explicitly define external service contracts. Without explicitly defining these, nothing within the class will be exposed publicly. In other words, WCF provides an opt-in model for explicitly defining service boundaries. Tenet 2: Services are Autonomous. Autonomy means we design the system to support the inevitable evolution of the service’s implementation over time. As we build our services, we need to assume that their internal implementation will evolve (be versioned) over time and that our services as well as the services on which we depend could change location at any time. Tenet 3: Services share schema and contract, not class. For those of you who are familiar with ASMX, this is exactly how ASMX works. The service publishes a contract that clients use to generate their own code to call the service. No types are shared between service and its clients by default. In addition, neither service requires knowledge of each other’s internal workings in order to exchange data – they only need the published schemas & contracts Tenet 4: Service compatibility is determined based on policy. Services communicate through dynamically negotiated communications channels that support the necessary semantics (security, reliability, etc). Service policy statements are created automatically based on configuration, class attributes, and method signatures. Client channels are automatically configured via retrieved service policy. By “name” means that we reference a well known name in Policy that represents a whole specification of behavior that needs to be used when talking to this endpoint. Transition : now that we’ve covered the three pillars of WCF, let’s take a high-level look at how a service actually works. 11/25/09 02:18 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. Next Generation Business Solutions Platform Strategy Review
  • Speaker Notes Here’s a high-level view of the WCF architecture. At the top is your code, the code you’re developing in Visual Studio or your environment. The WCF service uses an address (like “http://localhost”), a binding that determins how the service communicates, and a contract that specifies what operations the service can carry out. The binding consists of modules that specify how the service communicates, such as which transport the service communicates on, whether http, tcp, etc what encoder the service uses, like a text/XML encoder, a binary encoder, or a custom encoder what kind of security the service requires and any other communication requirements. When a message comes into the service, it is taken off the transport decoded with the proper decoder security is negotiated away and then the message is dispatched to the appropriate part of your code.
  • Speaker Notes When Web services were first introduced, they promised standards-based, loosely-coupled interoperability between applications running on different platforms. We've seen the success of Web services in recent years through their broad industry adoption and through the ongoing collaboration of MS, IBM, BEA, and other industry leaders involved in the standardization of the various Web services standards. While Web services brought about basic interoperability between different platforms, at their inception they didn’t provide for many of the enterprise-critical requirements for application to application communication – such as security, reliable messaging, and transaction support. Just as organizations collaborated on the basic standards for Web services interoperability (XML, WSDL, etc), they reconvened to begin building the WS-* specifications. These specifications would define the way in which services could interoperate securely, reliably, etc. For those of you unfamiliar with the process of standardization, in a nutshell: Organizations write and publish a specification such as WS-Security They gather feedback on this specification through feedback workshops After edits to the specification are made, it is republished The specification is tested through interoperability workshops, in which different organizations like MS, IBM, BEA, Webmethods, et al, get together and test their implementations of the specifications to ensure that they can interoperate with one another. That means that by the time the spec is ratified, all the participating vendors are guaranteed to have working implementations of it. Finally, the specification is submitted to a standards body such as the W3C or OASIS. The beauty of this process is that it is abstracted away from us as developers. What we see is the end result: interoperability! Because WCF will support the specifications shown on this slide, we know that the services we write using WCF will be able to interoperate with other platforms and tools that comply with the WS-* specifications. Plus, WCF services use WS-* compliant messages by default . That means that you get interoperability for free when you use WCF. In addition, when possible, WCF takes advantage of performance optimizations. For example, if two WCF services residing on the same machine want to communicate with one another, WCF can use named pipes instead of HTTP. Similarly, in such a scenario the WCF service would default to the binary format instead of text-based XML. Transition to next slide: Another key area of integration is ensuring that WCF integrates with ASMX, WSE, ES, etc to preserve our existing investments. 11/25/09 02:18 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. Next Generation Business Solutions Platform Strategy Review
  • 11/25/09 02:18 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. Next Generation Business Solutions Platform Strategy Review
  • Speaker Notes This 1-hour presentation provides a technical overview of the Windows Communication Foundation, previously codenamed “Indigo.” This presentation is targeted primarily at developers and architects. By the end of this presentation, you will understand the what, why, and how of WCF: What WCF is and what it provides developers, Why Microsoft is building it (the challenges we hope to overcome with WCF), and How WCF works, how it interacts with other Microsoft products (including the .NET Framework 2.0, Visual Studio 2005, and BizTalk Server), and how you can take advantage of WCF when building connected systems. Transition to next slide: Let’s begin by discussing the motivation behind WCF. 11/25/09 02:18 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. Next Generation Business Solutions Platform Strategy Review
  • Composite activities contains other activities EG: Sequence Partners and customers author custom activities EG: “ApproveOrder”
  • Speaker Notes This 1-hour presentation provides a technical overview of the Windows Communication Foundation, previously codenamed “Indigo.” This presentation is targeted primarily at developers and architects. By the end of this presentation, you will understand the what, why, and how of WCF: What WCF is and what it provides developers, Why Microsoft is building it (the challenges we hope to overcome with WCF), and How WCF works, how it interacts with other Microsoft products (including the .NET Framework 2.0, Visual Studio 2005, and BizTalk Server), and how you can take advantage of WCF when building connected systems. Transition to next slide: Let’s begin by discussing the motivation behind WCF. 11/25/09 02:18 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. Next Generation Business Solutions Platform Strategy Review
  • Windows Presentation Foundation (WPF) is a productive, unified approach to UI, Media, and Documents that you can use to deliver unmatched user experiences to your customers.
  • User experience is more than “looks”. User experience represents the overall interaction process of the user with an object. This interaction provides the user with an added value benefit. In this case the benefit that both tools offer is “opening a can”. However it is evident that the can opener will provide the user with a better overall user experience on obtaining the benefit. It is more secure, easier to use and can achieve the benefit faster than the knife. Let’s take this example even further. What is the difference between 2 cars - a 10K car and a 40K BMW? Both take you from point A to point B. There’s a world of difference. For one, the BMW has a much superior user experience (styling, handling, performance, etc.) In addition, notice that a BMW offers its owners an emotional connection, a “pride of ownership.” This gives BMW a unique brand in the eyes of its owners, and to the millions of potential owners who dream of buying this car some day! This shows us that user experience has tremendous business value – ability to differentiate products, create brand awareness, and customer satisfaction.
  • We say earlier how user experience is so common-place in consumer goods. Yet, when it comes to software, we are happy to live with “good enough” experiences. When was the last time you had a very satisfying experience with your software, where you thought to yourself “I Love my Software.” Is this because user experience in software does NOT matter? Microsoft firmly believes that user experience in software does matter. Even with our own products, such as Windows Vista and Microsoft Office 2007, Microsoft is delivering software with amazing user experience. User Experience (UX) matters because it helps end-users use products in an easy way (easy to use, relevant, secure, etc.). The things that make a software have a good UX is richness, data viz, globalization, accessibility, etc. UX can be easily measured based on success of usage, productivity, retention, comprehension, and so on.
  • Deliver Innovative User Interfaces Unified approach to UI, media, and documents Vector-based composition engine, hardware acceleration, resolution independent graphics engine Works on Windows Vista, Windows XP and Windows Server 2003 Increase Developer-Designer Productivity; Flexible Application Deployment Visual Studio IDE for developers; Microsoft Expression for designers Declarative programming (XAML) for better designer-developer collaboration Common code base and flexible deployment as stand-alone client or in browser Leverage Existing Code Base and Skill Set Interoperability with Windows Forms, Win32, DirectX, MFC, ActiveX Leverage vested knowledge in .NET Framework, CLR languages, and Visual Studio IDE WPF, a WinFX component, is Microsoft’s strategic presentation technology for Windows smart client user experiences. Use WPF to deliver innovative user interfaces through support for UI, media, document services, hardware acceleration, vector graphics, resolution-independent DPI for different form factors, data visualization, and superior content readability. Increase developer-designer productivity and collaboration through Visual Studio, Microsoft Expression Interactive Designer, and XAML. Write code once, and deploy as stand-alone client or in a browser. Incrementally embrace WPF through interoperability with Win32 and Windows Forms. Leverage vested knowledge in .NET Framework, CLR languages and Visual Studio IDE. Derive business value through new paradigms of user experiences, business intelligence through data visualizations, brand awareness through differentiated customer experiences, and customer loyalty through higher customer satisfaction.
  • Speaker Notes This 1-hour presentation provides a technical overview of the Windows Communication Foundation, previously codenamed “Indigo.” This presentation is targeted primarily at developers and architects. By the end of this presentation, you will understand the what, why, and how of WCF: What WCF is and what it provides developers, Why Microsoft is building it (the challenges we hope to overcome with WCF), and How WCF works, how it interacts with other Microsoft products (including the .NET Framework 2.0, Visual Studio 2005, and BizTalk Server), and how you can take advantage of WCF when building connected systems. Transition to next slide: Let’s begin by discussing the motivation behind WCF. 11/25/09 02:18 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. Next Generation Business Solutions Platform Strategy Review
  • … “ Who are you?” It’s an easy question to ask, but a hard one to answer, and I answer in a manner that’s appropriate to the context in which I am being asked. If I am asked who I am by someone I’ve never met before, I might only offer my name. If I am asked by someone at a conference, I might also offer my employer’s name and my role within that company. If I am asked who I am by a bank clerk when I open a new bank account, I might have to provide several pieces of identtiy information including proof that I have successfully identified myself to several other organizations (e.g. providing my drivers licence, passport, utility bill, mortgage papers, etc). I have several “identities” each representing a set of claims that identify me to different levels of accuracy, and each are applicable in a finite number of scenarios. But why is the question of identity now so very important? [Click]
  • The main reason that identity is now such a hot topic is based upon the fact that there is more opportunity to connect. High bandwidth communications via the Internet are now almost ubiquitous and span a broad range of scenarios Within organizations Between organizations At home (DSL/Cable/…) And elsewhere (GPRS/…) This has resulted in a rapid increase in the adoption of products and services available via the internet, and many of these services require some form of user authentication
  • While the broad adoption of the Internet is a good thing, confidence in the internet is now declining. Phishing and Phraud are now rife, users can not remember their many different usernames and passwords and there is no safe and consistent way in which identity information can be exchanged online 11/25/09 02:18 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
  • So, what’s the solution? Imagine if we could replace usernames and passwords with cryptographically strong tokens containing identity claims corroborated by a trusted third party This is what InfoCard and the Identity Metasystem gives us! "InfoCard" is the codename for a new feature of Windows Provides a rich, consistent experience to help users better manage and control their identities Identities are represented as “Cards” For the user: Simple to use - no more pesky username/password combinations to remember! Consistent UX - works the same, wherever you go Safe, highly secure environment shields your identity from attack For the RP: Reduced fraud Reduce overheads & improve bottom line Richer relationship with customers that you now KNOW Simplify identity management infrastructure Simple to adopt For the IP: Opens up a lot of business opportunities Reduced fraud Enable richer services for customers 11/25/09
  • Cards contain no actual identity data – only metadata: A list of the claims that a card represents Where to go in order to obtain the claims A signature identifying the card The actual data behind a card is dynamically obtained from the IP: From a local store for “self-issued cards” From the Identity Provider’s Secure Token Service (STS) for “managed cards”
  • Background and Scenario Information “ InfoCard” is the codename for a new technology in WinFX that simplifies and improves the safety of accessing Web sites. It helps Web sites defend against the most common forms of identity theft such as phishing, by replacing user names and passwords with cryptographically strong tokens and WS-* Web services. InfoCard is built into Windows Vista and will also be available on Windows XP and Windows Server 2003. In this diagram, we see how a customer uses an employer-provided InfoCard to login to a Web site.   The user navigates their browser to the Website and clicks on the Website’s login button. This causes the Website to respond with an HTML OBJECT tag that instructs the user’s machine to invoke the InfoCard UI. The user decides to use an InfoCard provided by their employer (like an electronic employee ID card) to login to the Web site. They click a representation of the card in the InfoCard UI. Because InfoCard doesn’t actually store any card information on the user’s machine (to help protect the safety of the information), it needs to retrieve the card information from the employer. All of the communication between the user’s machine and the employer is done using WS-* Web services.   How InfoCard uses WS-* Web Services Protocols First, InfoCard sends a WS-MetadataExchange request to the employer. This preliminary call is used to determine the requirements of the employer’s Web service that will return the InfoCard information. The employer then responds with all the information required to call the Web service. This includes requirements for the message format (schema – provided by XSD), Web service signature (WSDL), protocol (using WS-Policy), and security (using WS-SecurityPolicy).   Once InfoCard knows the requirements of the employer’s Web service, it submits a request for a security token containing the InfoCard information. It uses WS-Trust and WS-Security to secure the message. The employer processes the message and responds with the encrypted security token. Now that InfoCard has the encrypted security token containing InfoCard information from the employer, it simply submits it to the Web site, which processes the token and logs the user in.   Summary InfoCard has the potential to eliminate the need for usernames and passwords which are susceptible to phishing. Most importantly, InfoCard is based entirely on WS-* Web services protocols. This means, that in this scenario, even if the employer is running on Linux and the Website is running on PHP, InfoCard can still be used to perform the secure login.  
  • Thank you. 11/25/09 02:18 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. Next Generation Business Solutions Platform Strategy Review

Rolando Sandoval   Win Fx The Real Thing Rolando Sandoval Win Fx The Real Thing Presentation Transcript

  •  
  • WinFX Rolando Sandoval Wayik [email_address]
  • Agenda
    • Windows Communication Foundation
    • Windows Workflow Foundation
    • Windows Presentation Foundation
    • InfoCard
  • WinFX: .NET To The Core
  • Windows Communication Foundation
  • The Imperative to Connect MOBILE EMPLOYEES CUSTOMERS MOBILE EMPLOYEES CUSTOMERS
  • SOA Made Simple
  • What We Hear From You “ What API should I use?” “ How do I build service-oriented systems?” “ How can I send messages securely & reliably?” “ How do I develop interoperable applications?”
  • Windows Communication Foundation The Unified Programming Model For Rapidly Building Service-Oriented Applications
  • Windows Communication Foundation INTEROPERABILITY PRODUCTIVITY SERVICE-ORIENTED DEVELOPMENT
    • Broad Support for WS-* specifications
    • Compatible with existing MS distributed application technologies
    • Unifies today’s distributed technologies
    • Attribute-based development
    • Visual Studio 2005 integration
    • Enables development of loosely-coupled services
    • Config-based communication
  • SERVICE ORIENTATION
  • From Objects to Services
    • Polymorphism
    • Encapsulation
    • Subclassing
    • Message-based
    • Schema+Contract+Policy
    • Broad Interop
    • Location Transparent
    • Tight Coupling
    • Runtime Metadata
    Object-Oriented Service-Oriented Component-Oriented 1980s 2000s 1990s
  • Four Tenets of Service Orientation SERVICE ORIENTATION Compatibility Based On Policy Share Schema & Contract, Not Class Services Are Autonomous Boundaries Are Explicit
  • Binding Address Contract
  • WS-* Protocol Support XML Messaging Security Transactions Reliable Messaging Metadata
  • Windows Communication Foundation
  • Windows Workflow Foundation
  • Windows Workflow Foundation The Programming Model, Engine And Tools For Building Workflow Enabled Applications On The Windows Platform.
  • Workflow Software Challenges “ Orders are confirmed in 48 hours and shipped within 30 days” “ Most suppliers confirm our orders but some forget and we need to follow up” “ What is the status of this order and what is the next step?” Long Running & Stateful Require Flexible Control Flow Must Provide Transparency Workflows run for up to 30 days and must maintain state throughout Flexibility for people to override or skip steps in the workflow Rendering runtime state within a visualization of the workflow control flow
  • What Is A Workflow? A Set Of Activities That Coordinates People And Software... Like a flowchart…. Or a state diagram…. EX: Check Inventory EX: Escalate To Manager
  • Activity Basics
    • Activities are the building blocks of workflows
    The unit of execution, re-use and composition Basic activities are steps within a workflow Composite activities contains other activities Base Activity Library provides out-of-the-box activity set Partners and customers author custom activities
  • Flexible Control Flow Rules + data state drive processing order Rules-driven Activities
    • Data-driven
    • Simple Conditions, complex Policies
    • Constrained Activity Group
    State Machine Workflow External events drive processing order
    • Reactive, event-driven
    • Skip/re-work, exception handling
    • Graph metaphor
    Sequential Workflow Sequential structure Prescribes processing order
    • Prescriptive, formal
    • Automation scenarios
    • Flowchart metaphor
    Step1 Step2 State2 State1 Event Event Rule1 Rule2 Data Step2 Step1
  • Windows Workflow Foundation
  • Workflow Basics A workflow class may be defined in markup A workflow is a class
  • Building A Workflow
  • Windows Presentation Foundation
  • Windows Presentation Foundation A productive, unified approach to UI, media and documents to deliver unmatched user experience
  • What Is User Experience?
  • User Experience in Software? Ease of Use Learn ability Performance Reliability Security Optimized form factors Legibility / Readability Relevance / Contextualization Richness Graphics & Media Data Visualization Higher Fidelity Information Globalization Accessibility Hardware & Printing Integration Windows Vista Office 2007 Measuring UX ROI (end user behaviors / benefits) Success Productivity Retention Comprehension Conversion Satisfaction Excitement Repeat Use
  • Windows Presentation Foundation
    • Deliver Innovative User Interfaces
    • Increase Developer-Designer Productivity
    • Achieve Flexible Application Deployment
    • Leverage Existing Code Base and Skills Set
    Superior UX with UI, Media & Documents A productive, unified approach to UI, media and documents to deliver unmatched UX
  • InfoCard
  • Who Are You?
  • The Imperative To Connect
  • The Internet Identity Crisis
    • Lack of Identity Online
    • Phishing & Phraud
    • Password fatigue
    • Inconsistent, proprietary identification mechanisms
  • "InfoCard"
    • Consistent user experience
    • Helps eliminate usernames and passwords
    • Helps protect users from many forms of phishing & phraud attack
    • Support for two-factor authentication
    Easier Safer Built on WS-* Web Services Protocols
  • "InfoCard" Cards
    • Contains claims about my identity that I assert
    • Not corroborated
    • Stored locally
    • Signed and encrypted to prevent replay attacks
    • Provided by banks, stores, government, clubs, etc
    • Cards contain metadata only!
    • Data stored by Identity Provider and obtained only when card submitted
    SELF - ISSUED MANAGED
  • Microsoft InfoCard & WS-* Click “Login” Return <OBJECT> tag Request Metadata (WS-MetadataExchange) Return Metadata (XSD, WSDL, WS-Policy, WS-SecurityPolicy) Request Security Token (WS-Trust, WS-Security) Return Security Token Submit Security Token & Login To Web Site Select InfoCard
  • WinFX Resources
    • WinFX Community Site http://www.winfx.com
  •