Windows Workflow Foundation (WF)
Software applies knowledge to the manipulation of data while implementing business processes and rules. The knowledge imbedded in software by developers is generally a combination of procedural and declarative knowledge. Procedural knowledge is the step-by-step activities necessary to complete a business objective or “how to” perform a task. An example would be how to process a written judicial appeal from a lower court clerk document scanning, through data input, and ending with a classification as a civil or criminal case. Procedural knowledge can be expressed and implemented in an application using general-purpose programming languages like Microsoft’s C# or Visual Basic .NET.
Declarative knowledge, on the other hand, is about the relationships and rules that exist among data and objects implemented in an application to achieve a business process goal. For example, a piece of declarative knowledge would be that hotel reservations made at least 21 days in advance receive a 10% discount, unless the cost of the room is less than $100. The date and the price share a relationship and can affect each other. Expressing this type of knowledge using a general-purpose programming language isn't difficult on a small scale, but breaks down as the amount of knowledge grows. In the past, programmers transformed the knowledge into procedural code using if-then-else statements. Many software applications require an enormous amount of declarative knowledge. The .NET developer often refers to declarative knowledge as "business rules" that control the logic flow in business processes with Windows Workflow Foundation.
Encoding business rules into procedural code makes the rules harder to find, understand, and modify. Over the past decade, the software industry has developed tools and models for working with declarative knowledge. The IT industry categorizes these tools as rules engines, inference engines, and logic machines. A rules engine specializes in making declarative knowledge easier to implement, process, isolate, and modify. Windows Workflow Foundation provides a framework to model, implement, and execute business processes and logic with a built-in rules engine.
Since both declarative and procedural activity types are available, Windows Workflow offers the best of both worlds. Developers can use Sequence activities to implement procedural knowledge, and Condition, Policy, or Rule activities to execute declarative knowledge.
Windows Presentation Foundation (WPF)
WPF primarily is part of the System.Windows namespace which makes it easy for programmers with .NET Framework development experience using ASP.NET and Windows Forms to build rich client applications using a familiar programming language, such as C# or VB.NET.
WPF has additional programming enhancements for Windows client and browser-based application development. The most salient .NET Framework enhancement is the ability to develop an application using both markup and code-behind - an experience much like that of the ASP.NET programming paradigm. Designers can use Extensible Application Markup Language (XAML) markup to implement the appearance of an application while programmers can use managed programming languages (code-behind) to implement its processing behavior. This separation of appearance and behavior has the following 2 benefits:
1. Development and maintenance are enhanced because appearance-specific markup XAML is not tightly coupled with behavior-specific code in C# or VB.NET.
2. Development is more efficient because designers can implement an application's appearance with a tool like Expression Blend while developers are implementing the application's business logic and functional processes in Visual Studio 2008.
For browser-hosted applications, known as XAML browser applications (XBAPs), programmers can create pages (Page) and page functions (PageFunction<(Of <(T>)>)) that users can navigate between using hyperlinks (Hyperlink classes). WPF applications can be hosted in Internet Explorer 6, Internet Explorer 7, and Firefox. WPF offers the two options for alternative navigation hosts:
1. Frame, to host islands of navigable content in either pages or windows.
2. NavigationWindow, to host navigable content in an entire window.
Because XBAPs are hosted in a browser, security is important. In particular, a partial-trust security sandbox is used by XBAPs to enforce restrictions that are less than or equal to the restrictions imposed on HTML-based applications. Furthermore, each HTML feature that is safe to run from XBAPs in partial trust has been tested by Microsoft using a comprehensive security process.
Windows Communication Foundation (WCF)
Windows Communication Foundation, or WCF, allows the development of distributed applications through a service-oriented architecture programming model with a layered architecture. At its basic level, the WCF channel architecture provides asynchronous, untyped message-passing primitives, but built on top of this base are protocol facilities for secure, reliable, transacted data exchange and broad choice of transport and encoding options that include the top two: HTTP for SOAP messaging thorugh firewalls and the Internet; and TCP for fast Intranet connections. Other transport protocols are available as well.
The WCF typed programming model (called the service model) allows the development of distributed applications and provides developers that have expertise in ASP.NET Web services, .NET Framework remoting, and Enterprise Services, and who are coming to WCF with a familiar development experience in the Visual Studio 2008 IDE the tools to provide secure and reliable services. The service model features a straightforward mapping of Web services concepts to those of the .NET Framework common language runtime (CLR), including flexible and extensible mapping of messages to service implementations in languages such as Visual C# or Visual Basic. It includes serialization facilities that enable loose coupling and versioning, and it provides integration and interoperability with existing .NET Framework distributed systems technologies such as Message Queuing (MSMQ), COM+, ASP.NET Web services, Web Services Enhancements (WSE), and a number of other functions.
This service development paradigm introduces a new development environment for distributed applications since it is designed to interoperate well with the non-WCF applications as well. There are two important aspects to WCF interoperability: interoperability with other platforms, and interoperability with the Microsoft technologies that preceded WCF. An application built on WCF can interact with all of the following:
1. WCF-based applications running in a different process on the same Windows machine.
2. WCF-based applications running on another Windows machine across Intranets or the Internet.
3. Applications built on other technologies, such as J2EE application servers, that support standard Web services. These applications can be running on Windows machines or on machines running other operating systems like Lennix or Unix.
Friday, 5 June 2009
Subscribe to:
Post Comments (Atom)
1 comments:
Hi Nice Blog.A Document Scanning Services and Document Imaging Services provider focused on value pricing and quality deliverables with quick project turnarounds, utilizing dDSpeedScan© to provide best-practice project deliverables.document scanning
Post a Comment