Exam 70-486: Developing ASP.NET MVC 4 Web Applications

Overview


Language(s): English, Japanese
Audiences(s): Developers
Technology: Microsoft Visual Studio 2012
Type: Proctored Exam

Audience Profile

Candidates for this exam are professional developers who use Microsoft Visual Studio 2012 and the Microsoft .NET Framework 4.5 to design and develop web solutions. Candidates should have a minimum of three to five years of experience developing Microsoft ASP.NET MVC-based solutions.

Candidates should also have the following experience:

  • Designing and developing web applications in an ASP.NET MVC model
  • Planning and designing user interaction solutions based on business requirements
  • Experience with the full software development life cycle of web applications
  • Developing and deploying to multi-tier environments, including Windows Azure
  • Designing and developing asynchronous solutions

Credit Toward Certification

Exam 70-486: Developing ASP.NET MVC 4 Web Applications: counts as credit toward the following certification(s):

Note 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.

Skills Measured


Design the Application Architecture

  • Plan the application layers.

    This objective may include but is not limited to: plan data access; plan for separation of concerns; appropriate use of models, views, and controllers; choose between client-side and server side processing; design for scalability

  • Design a distributed application.

    This objective may include but is not limited to: design a hybrid application (on premise vs. off premise, including Windows Azure); plan for session management in a distributed environment; plan web farms

  • Design and implement the Windows Azure role life cycle.

    This objective may include but is not limited to: identify and implement Start, Run, and Stop events;identify startup tasks (IIS configuration [app pool], registry configuration, third-party tools)

  • Configure state management.

    This objective may include but is not limited to: choose a state management mechanism (in-process and out of process state management, ViewState); plan for scalability; use cookies or local storage to maintain state; apply configuration settings in web.config file; implement sessionless state (for example, QueryString)

  • Design a caching strategy.

    This objective may include but is not limited to: implement page output caching (performance oriented); implement data caching; implement HTTP caching

  • Design and implement a Web Socket strategy.

    This objective may include but is not limited to: read and write string and binary data asynchronously (long-running data transfers); choose a connection loss strategy; decide a strategy for when to use Web Sockets

  • Design HTTP modules and handlers.

    This objective may include but is not limited to: implement synchronous and asynchronous modules and handlers; choose between modules and handlers in IIS

Design the User Experience

  • Apply the user interface design for a web application.

    This objective may include but is not limited to: create and apply styles by using CSS; structure and lay out the user interface by using HTML; implement dynamic page content based on a design

  • Design and implement UI behavior.

    This objective may include but is not limited to: implement client validation; use JavaScript and the DOM to control application behavior; extend objects by using prototypal inheritance; use AJAX to make partial page updates; implement the UI by using JQuery

  • Compose the UI layout of an application.

    This objective may include but is not limited to: implement partials for reuse in different areas of the application; design and implement pages by using Razor templates (Razor view engine); design layouts to provide visual structure; implement master/application pages

  • Enhance application behavior and style based on browser feature detection.

    This objective may include but is not limited to: detect browser features and capabilities; create a web application that runs across multiple browsers and mobile devices; enhance application behavior and style by using vendor-specific extensions, for example, CSS

  • Plan an adaptive UI layout.

    This objective may include but is not limited to: plan for running applications in browsers on multiple devices (screen resolution, CSS, HTML); plan for mobile web applications

Develop the User Experience

  • Plan for search engine optimization and accessibility.

    This objective may include but is not limited to: use analytical tools to parse HTML; view and evaluate conceptual structure by using plugs-in for browsers; write semantic markup (HTML5 and ARIA) for accessibility, for example, screen readers

  • Plan and implement globalization and localization.

    This objective may include but is not limited to: plan a localization strategy; create and apply resources to UI including JavaScript resources; set cultures; create satellite resource assemblies

  • Design and implement MVC controllers and actions.

    This objective may include but is not limited to: apply authorization attributes and global filters; implement action behaviors; implement action results; implement model binding

  • Design and implement routes.

    This objective may include but is not limited to: define a route to handle a URL pattern; apply route constraints; ignore URL patterns; add custom route parameters; define areas

  • Control application behavior by using MVC extensibility points.

    This objective may include but is not limited to: implement MVC filters and controller factories; control application behavior by using action results, viewengines, model binders, and route handlers

  • Reduce network bandwidth.

    This objective may include but is not limited to: bundle and minify scripts (CSS and JavaScript); compress and decompress data (using gzip/deflate; storage); plan a content delivery network (CDN) strategy, for example, Windows Azure CDN

Troubleshoot and Debug Web Applications

  • Prevent and troubleshoot runtime issues.

    This objective may include but is not limited to: troubleshoot performance, security, and errors;implement tracing, logging (including using attributes for logging), and debugging (including IntelliTrace); enforce conditions by using code contracts; enable and configure health monitoring (including Performance Monitor)

  • Design an exception handling strategy.

    This objective may include but is not limited to: handle exceptions across multiple layers; display custom error pages using global.asax or creating your own HTTPHandler or set web.config attributes; handle first chance exceptions

  • Test a web application.

    This objective may include but is not limited to: create and run unit tests, for example, use the Assert class, create mocks; create and run web tests

  • Debug a Windows Azure application.

    This objective may include but is not limited to: collect diagnostic information by using Windows Azure Diagnostics API Implement on demand vs. scheduled; choose log types, for example, event logs, performance counters, and crash dumps; debug a Windows Azure application by using IntelliTrace and Remote Desktop Protocol (RDP)

Design and Implement Security

  • Configure authentication.

    This objective may include but is not limited to: authenticate users; enforce authentication settings; choose between Windows, Forms, and custom authentication; manage user session by using cookies; configure membership providers; create custom membership providers

  • Configure and apply authorization.

    This objective may include but is not limited to: create roles; authorize roles by using configuration; authorize roles programmatically ; create custom role providers; implement WCF service authorization

  • Design and implement claims-based authentication across federated identity stores.

    This objective may include but is not limited to: implement federated authentication by using Windows Azure Access Control Service; create a custom security token by using Windows Identity Foundation; handle token formats (for example, oAuth, OpenID, LiveID, and Facebook) for SAML and SWT tokens

  • Manage data integrity.

    This objective may include but is not limited to: apply encryption to application data; apply encryption to the configuration sections of an application; sign application data to prevent tampering

  • Implement a secure site with ASP.NET.

    This objective may include but is not limited to: secure communication by applying SSL certificates; salt and hash passwords for storage; use HTML encoding to prevent cross-site scripting attacks (ANTI-XSS Library); implement deferred validation and handle unvalidated requests, for example, form, querystring, and URL; prevent SQL injection attacks by parameterizing queries; prevent cross-site request forgeries (XSRF)

Preparation Materials


Learning Plans and Classroom Training

  • 20486A: Developing ASP.NET MVC 4 Web Applications (5 Days)
  • 20486B: Developing ASP.NET MVC 4 Web Applications (5 Days)

Books

  • Exam Ref 70-486: Developing ASP.NET MVC 4 Web Applications

Practice Tests

-

Community


If one of the posts in the following threads helps you answering your question, please vote them as helpful so other community members will find helpful information faster.

Other languages

This article is also available in other languages