Web Service Software Factory MSDN Webcast

Slides:



Advertisements
Similar presentations
COB.NET R2 Program - 02 June 2014 Guidance Automation Toolkit VISUG 09/08/2006 Jelle Druyts
Advertisements

Business Development Suit Presented by Thomas Mathews.
Enterprise Smart Clients Architecture, Patterns, Design, Best Practices Keith Elder Manager, Sr. Software Engineer Quicken Loans Blog:
Building Enterprise Applications Using Visual Studio ®.NET Enterprise Architect.
Leveraging Enterprise Library in Your Applications Keith Elder Quicken Loans Manager, Sr. Software Engineer Microsoft MVP Keith a t keithelder dot net.
SharePoint 2010 First Look: What's new for Developers in Microsoft SharePoint 2010 Matthew McDermott, MVP Aptillon, Able
Tom Hollander Solution Architect Solutions Development Centre Microsoft Australia ARC308.
VMware vCenter Server Module 4.
Discover, Master, InfluenceSlide 1 SQL Server Compact Edition and the Entity Framework Rob Sanders Readify.
©2011 Quest Software, Inc. All rights reserved. Steve Walch, Senior Product Manager Blog: November, 2011 Partner Training Webcast.
User Group 2015 Version 5 Features & Infrastructure Enhancements.
Windows.Net Programming Series Preview. Course Schedule CourseDate Microsoft.Net Fundamentals 01/13/2014 Microsoft Windows/Web Fundamentals 01/20/2014.
SQLTeach Presentation Template Use of this template is mandatory (no exceptions) Please note the orientation of this presentation is landscape (16:10);
Creating Business Workflow Using SharePoint Designer 2007 Presented by Tarek Ghazali IT Technical Specialist Microsoft SQL Server MVP Microsoft SQL Server.
DYNAMICS CRM AS AN xRM DEVELOPMENT PLATFORM Jim Novak Solution Architect Celedon Partners, LLC
Introduction to the Enterprise Library. Sounds familiar? Writing a component to encapsulate data access Building a component that allows you to log errors.

DotNetNuke v4 on ASP.NET v2 Stan Schultes Stan Schultes Enterprise architect / application developer Enterprise architect / application developer Conference.
Oracle Application Express 3.0 Joel R. Kallman Software Development Manager.
Module 8 Configuring and Securing SharePoint Services and Service Applications.
DotNetNuke Portal Private Assembly Development Stan Schultes Stan Schultes Enterprise architect / application developer Enterprise architect / application.
Slide 2 The Microsoft Office Project 2003 Software Development Kit Jim Corbin Programmer Writer Office Developer Documentation Microsoft Corporation Uma.
Microsoft SharePoint Server 2010 for the Microsoft ASP.NET Developer Yaroslav Pentsarskyy
SQL Server User Group Meeting Reporting Services Tips & Tricks Presented by Jason Buck of Custom Business Solutions.
Office Business Applications Workshop Defining Business Process and Workflows.
Michael Hofer Senior Consultant Microsoft Corporation.
Master Data Management & Microsoft Master Data Services Presented By: Jeff Prom Data Architect MCTS - Business Intelligence (2008), Admin (2008), Developer.
EMEA Beat Schwegler Architect Microsoft EMEA HQ Ingo Rammer Principal Consultant thinktecture
Preface IIntroduction Objectives I-2 Course Overview I-3 1Oracle Application Development Framework Objectives 1-2 J2EE Platform 1-3 Benefits of the J2EE.
EMEA Beat Schwegler Architect Microsoft EMEA HQ Ingo Rammer Principal Consultant thinktecture
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
Packaging Design and Architecture Guidance for Visual Studio Tom Hollander Wojtek Kozaczynski Harry Pierson Microsoft.
Integrating and Extending Workflow 8 AA301 Carl Sykes Ed Heaney.
A Web Service Software Factory Introduction Don Smith Product Manager patterns & practices.
YOUR LOGO Phase 2 International Providing critical business software solutions at affordable prices.
DotNetNuke v4 Overview Stan Schultes Stan Schultes Enterprise architect / application developer Enterprise architect / application developer Conference.
BizTalk Damir Dobric Lead Architect. Agenda Microsoft BizTalk RFID Overview Architecture Application models Implementing Event Handlers Sensors.
Custom Authentication Providers For DotNetNuke v5.0 Stan Schultes – Sarasota, FL Florida Community Leader
Enterprise Library 3.0 Memi Lavi Solution Architect Microsoft Consulting Services Guy Burstein Senior Consultant Advantech – Microsoft Division.
DotNetNuke v4 on ASP.NET v2 Stan Schultes Stan Schultes Enterprise architect / application developer Enterprise architect / application developer Conference.
TRINAY TECHNOLOGY SOLUTIONS
The Holmes Platform and Applications
ArcGIS for Server Security: Advanced
Web Technology Solutions
Progress Apama Fundamentals
SharePoint 101 – An Overview of SharePoint 2010, 2013 and Office 365
Joy Rathnayake Senior Architect – Virtusa Pvt. Ltd.
Building Enterprise Applications Using Visual Studio®
DotNetNuke® Web Application Framework
Chris Menegay Sr. Consultant TECHSYS Business Solutions
Web Service Software Factory
Enterprise Library Overview
A technical look at new capabilities and features
Entity Framework By: Casey Griffin.
Migrating Oracle Forms Using Oracle Application Express
…and web frameworks in general
Populating a Data Warehouse
Value Proposition.
TFS from on-prem to the cloud with Azure DevOps Services
Populating a Data Warehouse
Tech Ed North America /1/ :36 AM Required Slide
What's New in Visual Studio 2005
DAT381 Team Development with SQL Server 2005
SharePoint 2019 Overview and Use SPFx Extensions
…and web frameworks in general
Microsoft Office System UK Developers Conference
Introduction to ASP.NET Parts 1 & 2
SharePoint 2007 Developer Overview Collaboration BI Features
Mark Quirk Head of Technology Developer & Platform Group
SSIS Data Integration Data Warehouse Acceleration
Presentation transcript:

Web Service Software Factory MSDN Webcast Stan Schultes VBNetExpert.com June 21, 2007 The Web Service Software Factory (WSSF, or Service Factory) is a technology toolkit from the Microsoft Patterns & Practices group that focuses on building the server side of a web services infrastructure. WSSF takes advantage of several modules in the Microsoft Enterprise Library 2.0, and uses a software factory model to generate the application from database to service implementation through a set of wizards. WSSF comes in two flavors at the moment - one each for ASMX-based and WCF-based development. This session focuses on the ASMX technology which is in common use today.

Stan Schultes Enterprise Architect / Developer Speaker, Author, Trainer, Mentor Contributing Editor, Visual Studio Magazine Microsoft MVP in Visual Basic Email: stan@vbnetexpert.com Website: www.VBNetExpert.com Download this slide deck from my Visual Studio 2005 download page

Agenda What is the Web Service Software Factory? Why use WSSF WSSF Architecture, Layers & Relationships Getting Started & Using WSSF Application Development Process Demo – WSSF in Action Major Benefits of WSSF Current Release Status, Project Futures Tips & Tricks, Resources Slides will go quickly – a demo is the best way to get a feel for this awesome technology

What is the WSSF? Web Service Software Factory (Service Factory) Collection of Software Assets That Helps Architects and Developers Efficiently Build Instances of Web Service Endpoints (both ASMX and WCF) Goal: Identify and Document Best Practices in Web Services Development Guidance Automation Packages Integrated collection of tools, patterms, source code, and prescription instructions that guide developers throughout the application development process. Includes: How-to topics (step-by-step instructions that describe how to implement recommended practices) Patterns (documented solutions to common architectural, design, and implementation challenges) Reference Implementations (Global Bank) Guidance Package (extensions to Visual Studio 2005 that automate common development activities)

Why Use WSSF? Focus development efforts on business logic Generates consistent application infrastructure, style and logic Intrinsic separation of data, business logic, & service layers Incorporates common design patterns Eases migration to WCF through architecture, services Services are easily configured and managed Uses Enterprise Library modules WCF: Security & exception shielding mechanisms are built-in Assets can be customized and extended with GAT Patterns: Layered Apps – abstraction of an app into physical layers Service Interface –Services available and messages for interacting with the service Async Service – service calls use Begin/End operations with events Entity Translation – mapping of business objects to message contents & vice versa Repository – decouples business components from data access components Exception Shielding –exception detail is logged internally, sanitizes external exposure to details Transaction Script (Business Actions) – business operations are very granular (one call per operation) Talking points: Enables a process Enhances the relationship between Architects & Developers Infrastructure is created through templates & recipes EL modules: Exceptions, Logging, Data Access, Caching, Security

WSSF – Architecture See Aaron Skonnard’s Dec06 MSDN article for a great overview of the layers (p.4) Service Layer: Service Contract – defines operations, but doesn’t include behavior. Define interfaces, message types, and data types. Service Adapter – implements the service contract exposed on a endpoint, adapts the endpoint to the underlying business layer. Business Layer: Business entities – classes that model domain-specific objects, including behavior and state. Business logic – implements the actual business behavior. Business workflows – handle long-running processes, typically implemented in BPM systems such as BizTalk or WF Resource Access Layer: Data access logic – interact with the underlying data store Service Agents – interact with external web services Image from Microsoft Patterns & Practices

WSSF – Layers and Relationships Compare this to the Reference Implementation to see where the components live. Image from Microsoft Patterns & Practices

Getting Started with WSSF Install Visual Studio 2005 any except Express Edition SQL Server 2005 – Express or Developer Editions Install in the Following Order: Enterprise Library v2 (ELv2, Jan06) Guidance Automation Extensions (GAX, Jun06 or Feb07) Guidance Automation Toolkit (GAT, Jun06 or Feb07) Web Service Software Factory (WSSF, Jul06 or Dec06) VB = Jul06 (ASMX only), C# = Dec06 (also includes WCF) Unit testing: need VSTS or nUnit (v2.2.7) SQL Server – be sure to update connection strings for SQL 2005 (defaults to SQL Express) GAT only needed if you’ll be creating your own Guidance Packages GAX Implemented as an add-in to Visual Studio 2005.

Using the WSSF Reference Implementation, Hands-on Labs Guidance Packages: Data Access – create CRUD SPs, business entities, repostories & factories ASMX – build the service interface, messages, & translators to domain entities Customize for your needs with GAT Recipes and Templates: Created/customized by Architects Developers run to automate processes Generates Service Host and Test Client HOL – Coho Winery (follow instructions carefully). Be sure to install with short paths Updated for WCF Originals required much forum support for correct operation. Reorganizes the project – I recommend you don’t RI (& enhanced version) – Global Bank Data access guidance: not O/R mapping, rather helps to reduce effort in DA implementation. Alternatives: CodeSmith, NetTiers Simple data relationships today. More complex coming in future, community.

Development Process Create Application from Template Includes Host, Client Data Access guidance package: Add DB connection Create Business Entities (BEs) from database Create CRUD SPs Create Repositories from BEs ASMX guidance package: Define Data Types Map BEs to Data Types Define Message Types Define and Implement Service Contracts Expose Services Recipes notes: Create Data Types can use existing XML Schemas Expose Service – creates ASMX endpoint CRUD – Create, Read, Update, Delete

WSSF in Action Demo: HOL walkthrough (C#) Scenario: Coho Winery’s wine club Service: membership database update Open StartHere.doc (HOL directory) – show Domain/Information model (p.3) Start menu items Guidance Package Manager Guidance Navigator Code structure walkthrough Generic classes for repositories/factories Reference Implementation, RI-enhanced Fiddler demo, \\localhost.:port

WSSF – Major Benefits Improve quality of implementation Tested and reusable assets, unit testing, examples Increase predictability Best practices, ensures a migration path Enhance productivity Code generation, patterns, infrastructure More flexibility Customizable to your conventions & practices Ease of operation Enterprise Library Configuration Manager Major benefits: Reduce risk – baseline app is created for you Accelerated start – agile Quality – reusable assets Productivity – automation and patterns Adoption – extensible toolkit

Project Status & Futures WSSF is currently “v2” and still at CTP status: VB, ASMX only: Jul06 CTP C#, ASMX & WCF: Dec06 CTP Jul07 “v3” release for VS 2005, Nov07 for Orcas: Themes: Modeling, Customization, Service Agents, Health & Instrumentation ELv2 today, ELv3 future Data Access – to be removed & released later: More complex data (relational) Migration to LINQ (VS Orcas) FW3 support, WF, etc. V3 Themes: Modeling – developer models the logical components of the app & services using designer. Code skeleton is generated from the model, business logic is still provided by the developer. Customization – enhancing the ability to customize the software factory. Service Agents – creating a higher level of abstraction around SAs, better handling of caching, offline awareness, type sharing, instance management, etc. Health & Instrumentation – better support of ws operations, such as the ability to track service levels.

WSSF – Tips & Tricks Initial learning curve is steep, payback comes with repeat usage P&P team webcasts & reference implem’s provide a great jumpstart Create a naming convention for classes & methods Wizards are ‘fire once’, then maintain manually BE wizards only create data classes from tables, no O/R mapping Wizards don’t create array/list types (ASMX) Wizards don’t handle parent/child data Handle Nulls in database SPs Output parameters on SPs aren’t handled, use multiple resultsets Delete the VS .suo file to reduce load times (examines all history) Manually add web method description attributes in SC Interface files Create XML output with XmlTextWriter vs. serializing structures Use Fiddler (HTTP proxy) to examine messages Customize guidance, recipes for your needs using GAT Install HOL using short paths

Resources Hands-on Lab, Webcast: Reference Implementations: WSSF – C#, ASMX version from Dec 2006 CTP Service Factory Intro Webcast by Don Smith Reference Implementations: Best Practices Illustrated with Source Code WSSF & community enhanced version by Fidel Hobayan: http://devpinoy.org/blogs/fidelh/default.aspx Software Factories: Occasionally connected smart client (SCSF) Transactional web service (WSSF) Web client (WCSF) Mobile client (MCSF) Clarius Software Factories Toolkit - http://softwarefactoriestoolkit.net/ MSDN Articles (Service Station column by Aaron Skonnard) Web Service Software Factory (Dec. 2006) The Service Factory for WCF (Feb. 2007) Blogs: Don Smith, Pablo Galiano, Hernan de Lahitte http://msdn2.microsoft.com/en-us/practices/bb190348.aspx

Learn More WSSF Overview: WSSF VB Download – ASMX (July 2006): http://msdn2.microsoft.com/en-us/library/aa480534.aspx WSSF VB Download – ASMX (July 2006): http://www.microsoft.com/downloads/details.aspx?familyid=7dda69a4-d404-4cc0-b1ad-a9856c3af646&displaylang=en WSSF C# Download – ASMX & WCF (Dec 2006): http://www.microsoft.com/downloads/details.aspx?familyid=db996113-6e92-4894-9b7e-0debb614d72f%20&displaylang=en Hands On Labs (ASMX and WCF with C#): http://www.codeplex.com/servicefactory/Wiki/View.aspx?title=HandsOnLab WSSF Intro Webcast: http://msevents.microsoft.com/cui/webcasteventdetails.aspx?eventid=1032300720&eventcategory=5&culture=en-us&countrycode=us WSSF Communities – Service Factory project home: http://www.codeplex.com/servicefactory Microsoft Patterns & Practices: http://msdn.microsoft.com/practices/ Web Services Developer Center: http://msdn2.microsoft.com/en-us/webservices/default.aspx GuidanceAutomation.net

Contact Presentation downloads available from http://www.vbnetexpert.com, VS 2005 page http://www.vbnetexpert.com/VisualStudio2005/tabid/42/default.aspx Email: stan@vbnetexpert.com Web Site: www.VBNetExpert.com