Presentation is loading. Please wait.

Presentation is loading. Please wait.

Anand Raman, Group Manager David Wright, Lead SDE Developer Division March 15, 2007.

Similar presentations


Presentation on theme: "Anand Raman, Group Manager David Wright, Lead SDE Developer Division March 15, 2007."— Presentation transcript:

1

2 Anand Raman, Group Manager David Wright, Lead SDE Developer Division March 15, 2007

3 Organization Developer Content and International Product Group Products Visual Studio (VS) help Windows SDK (WSDK) Help VS & WSDK localization GlobalizationTools Developer content and translation wiki Sandcastle DocStudio power pack

4 ObjectivesOverviewArchitecture Sandcastle StatusSandcastle Status Community Engagement Best Practices SummaryQuestionsResources

5 After attending this presentation, you'll be able to: Understand Sandcastle architecture Find out development lessons we learned from Sandcastle Get your daily build documentation via Sandcastle (we can help) Give us feedback on Sandcastle

6 6 Sandcastle documents /// comments in source code. Mission Statement Enabling managed class library developers throughout the world to easily create accurate, informative documentation with a default (common) look and feel.

7 7 Mscorlib.dll - With Sandcastle

8 8 C# or VB source files csc /doc assemblies XML files Sandcastle HTML topics project file TOC file indexes Help Viewer HTML Help Compiler Sandcastle Libraries External Tools Source Files

9 A Software Development Story

10 Fast, flexible internal doc build engine Don’t external customers do this, too? Problems: Different XML languages More data sources for internal builds Simplicity more important for external users

11 1 half-time Manager/PM (Anand Raman) 1 full-time SDE (David Wright) 1 half-time SDET (Pritam Bhat) Many more contributors… 4+ internal teams doing testing 2+ internal teams contributing code 100s of active external testers several active external extension coders

12 Build Assembler Build Assembler MRefBuilderMRefBuilder

13 Copy TransformReplace Inside BuildAssembler MRefBuilderMRefBuilder BuildAssemblerBuildAssembler

14

15 public abstract class BuildComponent { protected BuildComponent (XPathNavigator configuration) { // initialize component using XML configuration data } public abstract void Apply (XmlDocument document, string id) { // do the work of the component on the document } // methods to facilitate logging }

16 OutreachDownloadBlogForumsResponseInquiriesSolutionsExtensions

17

18

19

20 Development Lessons Pick a good problem space Good componentization facilitates developer ownership and cooperation Establish and track performance metrics Release early, release often, both internally and externally Prioritize work based on feedback Respond to feedback

21 21 Produces quality, comprehensive, familiar MSDN-like documentation. Works with or without authored comments. Can support all.NET languages. Supports Generics and.NET Framework 2.0. Supports.NET Compact Framework projects. Simple compiler interface or Visual Studio add-in. Very fast performance. Supports localization.

22 22 MSDN-like layout and look & feel. Auto-generated index entries, TOC entries, topic chunking, and page layout promote consistency and familiarity. Auto-generated syntax declaration sections. Auto-generated inheritance tables. Code colorization. Multiple styles and language selection give end user the ability to select their favorite preferences.

23 V 1.0 RTW end of April Documentation compilers for schema, web services and unmanaged code Delivered as a part of VS SDK Avalon based viewer for Sandcastle xml output

24 Sandcastle Team Blogs http://blogs.msdn.com/sandcastle Sandcastle website http://www.sandcastledocs.com Sandcastle support Sandchlp

25

26 © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.


Download ppt "Anand Raman, Group Manager David Wright, Lead SDE Developer Division March 15, 2007."

Similar presentations


Ads by Google