Exam 70-519 - Pro: Designing and Developing Web Applications Using Microsoft .NET Framework 4
Overview
Language(s): | English |
Audience(s): | Developers |
Technology: | Microsoft Visual Studio 2010 |
Type: | Proctored Exam |
Exam Topcis Covered
This exam is designed to test the candidate's knowledge on designing and developing Web applications using Microsoft .NET 4 and Visual Studio 2010.
Questions that contain code will be presented in either VB or C#. Candidates can select one of these languages when they start the exam.
Audience Profile
Candidates are typically Job Role Professionals who design and develop Web application by using Microsoft Visual Studio 2010 and .NET Framework 4. These professional developers should have a minimum of three years of experience using Microsoft ASP.NET technologies to develop compelling user experiences. Candidates should be able to demonstrate the following by using .NET Framework:
- Experience designing and developing modern Web user experiences by using such technologies as AJAX and jQuery
- Experience consuming business and data services such as REST, WS-*, Windows Communication Foundation (WCF), and Microsoft ADO.NET Data Services
- Experience with the full software development life cycle
In addition, candidates should have a solid understanding of:
- Web application architectures such as ASP.NET MVC and Web Form
- State management for Web applications by using ASP.NET
Credit Toward Certification
Exam 70-519: Pro: Designing and Developing Web Applications Using Microsoft .NET Framework 4 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 discreation 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
Designing the Application Architecture (19%)
Plan the division of application logic.
This objective may include but is not limited to: choosing between client-side and server side processing, planning separation of concern, (for example, partitioning functionality between controllers and evaluating business and data service consumption), planning for long-running processes (for example, synchronous vs. asynchronous)
Analyze requirements and recommend a system topology.
This objective may include but is not limited to: designing interaction between applications, mapping logical design to physical implementation, validating nonfunctional requirements and cross-cutting concerns (for example, communications, operations management, and security), evaluating baseline needs (for example, scale and quality of service)
Choose appropriate client-side technologies.
This objective may include but is not limited to: JavaScript, ASP.NET AJAX, jQuery, Microsoft Silverlight
Choose appropriate server-side technologies.
This objective may include but is not limited to: user controls, server controls, partials, custom HtmlHelper extensions, Web parts, inheriting controls, dynamic data controls
Design state management.
This objective may include but is not limited to: designing an application for the proper user of application state, session state, and request state (for example, ViewState, CotnrolState, Cache object, cookies, and client-side persistence)
Designing the User Experience (17%)
Design the site structure.
This objective may include but is not limited to: designing application segmentation for manageability and security (for example, using areas, shared views, master pages, and nested master pages), appropriate use of style sheets, client-side scripting, themes, client ID generation, rendering element models, routing engine
Plan for cross-browser and/or form factors.
This objective may include but is not limited to: evaluating the impact on client side behaviors, themes, bandwidth, style sheets (including application design - task based or scaled rendering of existing page), when to apply Browser file, structural approaches, user agents, different platforms (mobile vs. desktop)
Plan for globalization.
This objective may include but is not limited to: designing to support local, regional, language, or cultural preferences, including UI vs. data localization (for example, implementing at database level or resource level), when to use CurrentCulture vs. CurrentUICulture, globalization rollout plan (for example, setting base default language, planning localization), handling Unicode data (for example, what fields to include, request encoding), right-to-left support, vertical text and non-Latin topographies, calendars, data formatting, sorting
Designing Data Strategies and Structures (18%)
Design data access.
This objective may include but is not limited to: choosing data access technologies such as ADO.NET Data Services, Entity Framework, Windows Communication Foundation (WCF), and ASP.NET Web Services
Design data presentation and interaction.
This objective may include but is not limited to: pulling data from data layer and binding into views, pages, and controls, and pulling data back to data layer by using ModelBinders, data source controls, and HtmlHelper extensions, or programmatically
Plan for data validation.
This objective may include but is not limited to: contextual validation vs. data integrity, where to validate data, synchronization between UI and data layer, data annotations
Designing Security Architecture and Implementation (17%)
Plan for operational security.
This objective may include but is not limited to: approaches for process- and resource-level security, including local and remote resources, Code Access Security (CAS), including trust level, process identity, application pool, and identity tag
Design an authentication and authorization model.
This objective may include but is not limited to: authentication providers, including WindowsForms, and custom user identity flowthrough (for example, trusted subsystem), role management, membership providers, URL authorization (for example, AuthorizationAttribute), file authorization, Authorization Manager (AzMan)
Plan for minimizing attack surfaces.
This objective may include but is not limited to: input validation, throttling inputs, request filtering, where to use Secure Sockets Layer (SSL)
Preparing For and Investigating Applications Issues (15%)
Choose a testing methodology.
This objective may include but is not limited to: black box, white box, integration, regression, coverage, API testing, performance testing, securityt testing
This objective does not include: load testing, Web testing, unit testingDesign an exception handling strategy.
This objective may include but is not limited to: HandleError attribute in MVC, common error pages, post-error processing, global vs. page level
Recommend an approach to debugging.
This objective may include but is not limited to: tools and approaches for a given scenario (for example, memory dumps, DebuggingAttributes, crashes vs. hangs, deadlocks, assembly binding), when to attach to process (Visual Studio Development Server vs. IIS vs. Internet Explorer), root cause analysis
This objective does not include: basic breakpointsRecommand an approach to performance issues.
This objective may include but is not limited to: which instrumentation to watch or create (including performance counters and event tracing) to analyze performance issues, page and fragement caching
Designing a Deployment Strategy (14%)
Design a deployment process.
This objective may include but is not limited to: Windows Installer (MSI) vs. xcopy vs. Web Deployment Tool, scaling, rolling deployments
Design configuration management.
This objective may include but is not limited to: using the ConfigSource attribute (for example, connection strings), staging vs. production vs. development, topologies, machine.config vs. web.config, using IIS vs. Visual Studio Development Server during development, application pools, configuration inheritance
Plan for scalability and reliability.
This objective may include but is not limited to: scaling up, scaling out, at physical level and at architectural level, impact of offloading technologies on load balancing, including state, synchronizing machine and encryption keys
Design a health monitoring strategy.
This objective may include but is not limited to: when to monitor application or business-related events (e.g., on UI every time clicked or in business layer), determining a strategy for using ASP.NET Health Monitoring, throttling, filtering, delivery method
Preparation Materials
Books
Practice Tests
- MeasureUp (Measureup.com)
- Self Test Software (Selftestsoftware.com)
Community
- Wiki: Training and Certification Portal (en-US)
- Forum: Training and Certification (en-US)
- Microsoft Learning community
Related Forum Posts
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.