Destination .NET! Platform Tools, Technologies & Resources
1 3 5 7 9
2 4 6 8 10
From VB4, C++ and Java to working on .Net Since Beta, 1.0.
Improving partner satisfaction and accelerating Microsoft platform adoption for managed ISVs.
Is your application compatible with Windows Vista? Make sure today by taking our self-test. Just follow the five steps of the Works with Windows Vista program so that you and your customers can be confident in your solution’s compatibility. Read More >>
What product/topic are you most interested in?
(Choose your top answer.)
Windows Vista
Windows Server 2008
2007 Microsoft Office system
SQL Server 2008
ASP.NET
Visual Studio 2008
Windows Mobile
Software as a Service
A little bit of everything
Just browsing, thanks

View Results
Whether you love the site or hate it, we want to know. Tell us what topics to cover, help us improve things, or just sound off on something we could've done better. Send your feedback directly to the editor by email.
 Print Print
Rate this item | 0 users have rated this item.
Remove Decision-Making Barriers for Your Application with ISV Platform Certification
In recent months, Microsoft has released SQL Server 2005, Visual Studio 2005, 2007 Office, SharePoint Server 2007, and Windows Vista—plus, Windows Server 2008 is slated to be released later this year. These releases represent a significant boon to the ISV community. Microsoft has created a series of programs to help ISVs build their applications and gain credibility for them as well. In this article, Ty Anderson explains the benefits of certification, the certification process, and how to get started today. 

More Resources
  • OnRamp240 Visual Studio 2008 Seminar—Coming to a City Near You!
  • Windows Vista Certification Workshop Series
  • Windows Vista Application Compatibility Labcast
  • Application Test Specification
  • FxCop
  • VeriTest
  • Microsoft Innovate on Program
  • ISV Web Seminar: Windows Vista Certification Workshop
  • Lawyers have the Bar Exam, accountants have the CPA exam, doctors have their respective State Board Exams, and developers have the Microsoft developer exams. Why? Is it because they need someone to tell them they have enough knowledge and skill to perform within their chosen profession at an adequate level? This might be true for some less confident souls but for the majority, these exams exist to provide third-party validation that they are capable and follow the well-known best practices.

    Why is third-party validation needed? Well, without it, anyone could market him or herself as an expert in tax law (or any specialty) and you would lack the means to verify that claim. Third-party validation, in the form of testing and certification is a critical component of our economy. For example, an accountant who is also a Certified Financial Planner, will have more credibility when providing investment advice than an accountant with only a CPA qualification.

    In the same way, an ISV that has passed a platform test with VeriTest for a given Microsoft technology stands a better chance of winning the sale when competing against a company that lacks certification. For some crazy reason, the certification removes a risk in the mind of the IT decision-maker. This is because certification validates your claims that your application works well with the Microsoft platform.

    Benefits of Certification
    Achieving certification status provides benefits to four main audiences:

    • Independent Software Vendor (ISV): For the ISV, the certification tells your customers that your application plays well with the targeted platform (Windows XP, Vista, Windows Server 2003, SQL Server, .NET, etc.). This is important, especially if your customers tend to be more risk-adverse and are managing several dependencies within the organization, across their application stack. In addition, if your organization is pursuing certified partner status with Microsoft, certifying your applications will earn partner points to help achieve Certified or Gold partner status.

    • IT Decision-Makers: Attempting to fully understand how a typical IT decision-maker actually makes decisions can lead to an incredible amount of frustration. Many factors can be in play for any single decision—for example, available budget amounts, targeted platform, ability to support the technology, integration capabilities, and many more. Throw the politics of the situation into the mix and you begin to realize how tenuous the process can become. Certification does not remove all these issues, but it will help gain credibility for your application and remove some of the political risk involved for the decision-maker. Also, oftentimes, IT decisions are championed by an "influencer." The influencer is the person that wants to see your application installed for their use in the organization, but do not have the decision-making authority. Certification removes a potential hurdle for the influencer, as it shows the final decision-maker that your application works on the tested platform.

    • System Integrators (SI): System Integrators are not too terribly different from IT decision-makers, except they are typically consultants and external to the organization that would purchase your application. I fall into this category myself. SIs like to make recommendations that help the client. Therefore when looking for an application that will play with SQL Server 2005, an application that is certified will stand a better chance of receiving a recommendation over one that does not have a certification. This is obvious. What is not as obvious is that SIs are really channel partners for your application. Like any company, they have staff and training issues. If they begin to use your application and develop expertise around it, they are likely to continue to recommend the adoption of your product to their clients.

    • Microsoft: Microsoft created the certification program to help nurture potential partners and provide guidance to them as they build applications on the Microsoft platform. Microsoft provides a ton of guidance material and technical content, but they don't do it entirely because they are altruists. Microsoft clearly has a stake in the game, as the company wants to see its platform extended by partners. This extension ultimately benefits Microsoft customers as you, the ISV, extend Microsoft's platform by building industry vertical solutions.

    Prepping Your Application for Testing
    If you are looking to sell and market your application, whether it is a mass market or only a select list of clients, you need to complete some prep work that will increase the chances of passing. Fortunately, all the tools you need exist and are freely available.

    The first item you need is the Application Test Specification. This document explains each test option and lists the requirement for passing the test. For example the SQL Server test requires the application to support at least one supported SQL Server 2005 connection method (i.e. ADO, ADO.NET, OLE DB, ODBC, or JDBC). Basically this document lets you know up front the "non-negotiable" rules that must be supported to pass the test. If your application breaks one of these "non-negotiable" items, then it will automatically fail.

    Once understand the nature of your chosen tests (SQL Server, .NET, Windows Client, etc.) and believe your product meets the minimum requirements, you are ready for the next, and last, preparatory step of testing the code for conformance to .NET framework best practices. Microsoft provides a tool, FxCop, that will test your .NET assemblies and identity any and all lines of code that do not adhere to proper strategies. Once FxCop completes its testing, it lists all areas of your application that do not conform to supported .NET code strategies. For each item identified, FxCop lists the rule broken by your application and the reason why it was flagged as broken.

    The best strategy here is to run FxCop to identify any issues, clean them up, and re-run FxCop. Try to eliminate all issues if you can. If you feel you disagree with some of FxCop's results or have a reason for breaking one of the rules, that's okay. Just be prepared to explain the reason why your implementation breaks the rule and why it is a sound strategy for your application.

    Submitting Your Application for Testing (The VeriTest Testing Process)
    Once your code is ready, you can start the certification testing process by submitting a testing questionnaire at VeriTest. The submission process requires 10-15 minutes of your time, as you will need to fill out a questionnaire for each test you require (typically two). This questionnaire provides VeriTest with the background for your application and its intended use. In addition, specific technical questions are required, but they largely mirror the requirements for you chosen test as described in the Application Test Specification document.

    Once you submit your code, the testing process takes 5-10 business days. Upon completion, VeriTest sends a complete report explaining the tests performed and the results. If you pass, then you are good to go and can move on to completing an ISV competency in the Microsoft Partner Program.

    But what if your application fails the testing process?

    The short answer is that you can correct the issues and resubmit the code for testing. This is great, but it does cost money each time you test your code. In reality, the testing process is not a complete black-box where you submit the code, VeriTest tests it, you receive the results, and that's it. Like any Microsoft Partner, VeriTest works with their clients to help them achieve the desired result. Say, VeriTest identifies two or three outlying issues with your application, they will initially consult with Microsoft to determine if those are truly reasons that should keep the application from passing. If VeriTest requires a deeper understanding of your code, they will contact you and seek to understand the strategy employed, etc., in order to understand your rationale.

    Obviously, if your code breaks any of the guidelines prescribed in the Application Test Specifications, your application will fail, as those guidelines are considered automatic deal-breakers. Outside of this, VeriTest says that roughly 95 percent of the applications pass due to the consultative approach they take.

    Summary
    The barrier for building new applications is at an all-time low. Today, just about anyone can build powerful applications that provide value to someone. The trouble is, how can this "someone" determine if an application will integrate with their environment? They can certainly figure it out by performing research on their own. However, by earning certification covering the Microsoft technologies supported by your application, you will be reducing the effort required for "someone" to make the decision to purchase your application. In effect, you will be raising the success rate for your application.

    Also, remember that Microsoft is always there to help partner ISVs achieve success. Along with certification options, Microsoft also offers the Innovate on program, which can help you in the testing process, and with support, marketing, and much more!

    *This article was commissioned by and prepared for Microsoft Corporation. This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.


       
    Ty Anderson is a partner at Cogent Company, a Microsoft-based consultancy in Dallas that helps organizations use Microsoft technologies to grow their business. Ty is a regular contributor to Devx.com, wrote Office Programming 2003: Real World Applications (Apress), and loves to wear his yellow A's hat.
    Submit article to:
    Extending your solution to run on Microsoft technology is easier than ever. Through NXT, you can reach more customers, increase revenues and slash development time and costs, accelerating both your time to market and profitability. Get the details on NTX. >>
    Sign up for your free e-mail newsletters today!
    DevX Windows Developer Update

    More Newsletters
    Add MS AJAX Extensions to a Visual Studio 2005 Setup Project
    Eight Key Practices for ASP.NET Deployment
    Faster Search Results with the VS.NET IDEs Incremental Search Feature
    Configuring WCF Services and Getting Them Ready to Ship
    Getting Started with the Windows Live Tools



    JupiterOnlineMedia

    internet.com earthweb.com Devx.com mediabistro.com Graphics.com

    Search:

    Jupitermedia Corporation has two divisions: Jupiterimages and JupiterOnlineMedia

    Jupitermedia Corporate Info

    Copyright 2008 Jupitermedia Corporation All Rights Reserved.
    Legal Notices, Licensing, Reprints, & Permissions, Privacy Policy.

    Web Hosting | Newsletters | Tech Jobs | Shopping | E-mail Offers