Exam 70-518

Pro: Designing and Developing Windows Applications Using Microsoft .NET Framework 4

Microsoft Certified Professional exams are provided by a third-party vendor. Register for an exam at Prometric's website.

Schedule now

* Pricing does not include any promotional offers or reduced pricing for Microsoft IT Academy program members, Microsoft Certified Trainers, and Microsoft Partner Network program members. Price is subject to change without notice. Price does not include applicable taxes. Please confirm exact pricing with the exam provider before registering to take an exam.
Microsoft Visual Studio 2010 logo
  • Published: July 2, 2010
  • Languages: English
  • Audiences: Partners, Developers
  • Technology: Microsoft Visual Studio 2010
  • Credit toward certification: MCPD

Convince your boss email

Copy the following content into an email message to your boss and update [the bracketed text] with the appropriate content.

Dear [your boss's name]:

I'd like to expand and prove my technical skills by earning a Microsoft Certification. My next step is taking Exam 70-518. The registration fee is {GET PRICE FROM EXAM PROVIDER}.

When I pass this certification, you'll have proof of my ability to work with Microsoft Visual Studio 2010. Microsoft has training and online resources to help me prepare for the exam. I believe I'll be more effective and productive after achieving this valuable technical certification.

Let me know if you have any questions. In the meantime, you can find out more about this exam at http://www.microsoft.com/learning/en-us/exam-70-518.aspx. As you can see, the exam validates skills that are crucial to our team's success.

Thank you for your support,

[your name]

Skills measured

This exam measures your ability to accomplish the technical tasks listed below. The percentages indicate the relative weight of each major topic area on the exam. The higher the percentage, the more questions you are likely to see on that content area on the exam.

Please note that the questions may test on, but will not be limited to, the topics described in the bulleted text.

  • Design a loosely coupled layered architecture

    • Separation of concerns, including presentation, business logic, and data; minimize logical dependencies; decide how layers connect (for example, content-based versus context-based filtered routing)

  • Design service interaction

    • Service granularity (cohesiveness); interface granularity (responsibilities of an operation), versioning, data and service contracts (using a message contract rather than a data contract); hosting and protocol; manage data integrity (re-validate data across trust boundaries); evaluate use of RESTful interface (URI/resource structure); choose a message exchange pattern; choose synchronous versus asynchronous operation invocation; decide whether to use custom Simple Object Access Protocol (SOAP) headers

    • Interact with existing/external systems

  • Design the security implementation

    • Protect data during transmission (encryption/hashing algorithm), authentication (client/proxy credential) and authorization (groups, built-in or custom role provider, claims, federated security), design for least privilege (impersonation and/or delegation), plan for User Access Control (UAC) environments; audit

  • Design for interoperability with external systems

    • Choose an appropriate strategy for communicating with COM components, mainframe services, and web services

  • Design for optimal processing

    • Parallel processing; asynchronous processing; service bus; gateway processes; scalability (scale out versus scale up); design tiers to minimize latency (batch retrieval, multiple small calls)

  • Design for globalization and localization

    • Multi-locale services; design for time zone, sort, UI considerations; database design considerations

  • Choose the appropriate Windows client technology

    • Choose between Windows Forms, WPF, or a combination; choose an appropriate presentation pattern (Model View Presenter [MVP], Model View/View Model [MV-VM]); identify areas for possible migration/interoperability from Windows Forms to WPF

  • Design the UI layout and structure

    • Evaluate the conceptual design, decide how the UI will be composed (for example, static versus dynamic screen); design for the inheritance and reuse of visual elements (for example, styles and resources); accessibility considerations; decide when custom controls are needed

  • Design application workflow

    • User navigation, design wizards, modal versus non-modal; dependencies among UI elements; design for input types, based on environment and audience (kiosk, very large display, small display, indoors, and outdoors)

  • Design data presentation and input

    • Design data validation; design a data-binding strategy; design a reporting strategy; choose media services (audio, video, images, or animation); manage data shared between forms

  • Design presentation behavior

    • Determine which behaviors will be implemented and how; drag and drop functionality

  • Design for UI responsiveness

    • Offload operations from UI thread and reporting of progress, avoid unnecessary screen refresh; media buffering; client versus server side sorting and filtering of data; address UI memory issues

  • Choose the appropriate data access strategy

    • Choose the appropriate data access technology (Entity Framework, LINQ to SQL, Microsoft ADO.NET); support data sources, such as XML data, flat files, and relational databases

  • Design the data object model

    • Map to persistent storage (map to tables, XML files), abstract from the service layer (encapsulate underlying schema details); design a schema change management strategy

  • Design data caching

    • Manage data cache (lifetime, targets, size, scope); manage data state (change notification, cache invalidation/synchronization)

  • Design offline storage and data synchronization

    • Manage offline data, map a data store to local cache, design synchronization; analyze target data environment (for example, Microsoft SQL Server, SQL Express, workstation capabilities, OS, bandwidth, reliability)

  • Design for a concurrent multi-user environment

    • Plan for concurrency and collision avoidance, optimistic versus pessimistic locking, cross-tier distributed transactions

  • Analyze data services for optimization

    • Object relational mapping (ORM) performance, optimizing roundtrips, lazy versus eager loading, caching of frequently used data

  • Define a client deployment strategy

    • Recommend an installation method (Xcopy, ClickOnce, MSI, third party); identify prerequisites (target framework and bootstrap requirements), deploy COM components

  • Plan a database deployment

    • Existing or shared instance; remote server; embedded database; deploy new objects (such as tables, stored procedures, and views) to a new or existing database; recognize database security concerns (such as shared instances and access); remote versus local database

    • This objective does not include: DLL deployment; shared GAC deployment

  • Design a solution update strategy

    • Preserve shared components, data integrity, and user customizations; design an update delivery method (for example, automated update detection from the client), version mismatch (both local binaries and service interfaces)

  • Plan for n-tier deployment

    • Map the solution to the topology (required hardware, such as servers, routers, and RAM; and required software, such as OS); determine component installation order; review security requirements

  • Design for error handling

    • Collect user feedback when errors occur, handle exceptions across tiers

    • This objective does not include: try/catch blocks

  • Evaluate and recommend a test strategy

    • Recommend functional testing, recommend reliability testing (performance testing, stress testing, scalability testing, duration testing)

    • This objective does not include: unit testing

  • Design a diagnostics and monitoring strategy

    • Profile, trace, performance counters, audit trails (events and information); usage reporting; decide where to log events (local versus centralized reporting)

Preparation options

Buy a practice test for Exam 70-518 from:

Cover of 'MCPD 70-518 Exam Ref: Designing and Developing Windows Applications Using Microsoft .NET Framework 4'

MCPD 70-518 Exam Ref: Designing and Developing Windows Applications Using Microsoft .NET Framework 4

Published: December 2011

Prepare for MCPD Exam 70-518, and help demonstrate your real-world mastery of Windows application design and development with .NET Framework 4. Designed for experienced, MCTS-certified professionals ready to advance their status, Exam Ref focuses on the critical-thinking and decision-making acumen needed for success at the MCPD level.

Focus on the expertise measured by these objectives:

  • Designing the layers of a solution
  • Designing the presentation layer
  • Designing the data access layer
  • Planning a solution deployment Designing for stability and maintenance

Buy this book at the Microsoft Press Store

Who should take this exam?

Candidates for this exam work on a team in a development environment that uses Microsoft Visual Studio .NET 2010 and the Microsoft .NET Framework 4 to develop desktop applications. Candidates should have a minimum of three years of experience developing applications, including one to two years of experience developing Windows-based applications. Candidates should have a thorough understanding of Windows Presentation Foundation and Windows Forms technologies in the .NET Framework 3.5 and 4.

More information about exams

We recommend that you review this exam preparation guide in its entirety and familiarize yourself with the resources on this website before you schedule your exam. See the Microsoft Certification exam overview for information about registration, videos of typical exam question formats, and other preparation resources. For information on exam policies and scoring, see the Microsoft Certification exam policies and FAQs.

This preparation guide is subject to change at any time without prior notice and at the sole discretion of Microsoft. Microsoft exams might include adaptive testing technology and simulation items. Microsoft does not identify the format in which exams are presented. Please use this preparation guide to prepare for the exam, regardless of its format. To help you prepare for this exam, Microsoft recommends that you have hands-on experience with the product and that you use the specified training resources. These training resources do not necessarily cover all of the topics listed in the "Skills measured" section.