Exam 70-487: Developing Azure and Web Services
Overview
Language(s): | English, Japanese |
Audiences(s): | Developers |
Technology: | Microsoft Visual Studio 2012 |
Type: | Proctored Exam |
Audience Profile
Candidates for this certification are professional developers that use 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 ASP.NET MVC-based solutions.
Additionally, candidates should be able to demonstrate the following:
- Experience designing and developing Web applications that access various (local and remote) data and services including Windows Azure
- Experience with the full software development life cycle of data and service
- Experience developing and deploying to multi-tier environments, including Windows Azure
- Experience designing and developing asynchronous solutions
- Experience creating and consuming HTTP services
Credit Toward Certification
Exam 70-487: Developing Windows Azure and Web Services: 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
Accessing Data (24%)
Choose data access technologies
This objective may include but is not limited to: Choose a technology (ADO.NET, Entity Framework, WCF Data Services) based on application requirements
Implement caching
This objective may include but is not limited to: Cache static data, apply cache policy (including expirations); Use CacheDependency to refresh cache data; query notifications
Implement transactions
This objective may include but is not limited to: manage transactions by using the API from System.Transactions namespace; implement distributed transactions; specify transaction isolation level
Implement data storage in Windows Azure
This objective may include but is not limited to: access data storage in Windows Azure; Choose data storage mechanism in Windows Azure (blobs, tables, queues, SQL Database); Distribute data by using the Content delivery network (CDN); Handle exceptions by using retries (SQL Database); manage Windows Azure Caching
Create and implement a WCF Data Services service
This objective may include but is not limited to: Address resources; implement filtering; create a query expression; access payload formats (including JSON); use data service interceptors and service operators
Manipulate XML data structures
This objective may include but is not limited to: Read, filter, create, modify XML data structures; Manipulate XML data by using XMLReader, XMLWriter, XMLDocument, XPath, LINQ to XML; transform XML by using XSLT transformations
Querying and Manipulating Data by Using the Entity Framework (20%)
Query and manipulate data by using the Entity Framework.
This objective may include but is not limited to: Query, update, and delete data by using DbContext; build a query that uses deferred execution; implement lazy loading and eager loading; create and run compiled queries; query data by using Entity SQL
Query and manipulate data by using Data Provider for Entity Framework
This objective may include but is not limited to: Query and manipulate data by using Connection, DataReader, Command from the System.Data.EntityClient namespace; perform synchronous and asynchronous operations; manage transactions (API)
Query data by using LINQ to Entities.
This objective may include but is not limited to: query data by using LINQ operators (for example, project, skip, aggregate, filter, and join); log queries; implement query boundaries (IQueryable vs. IEnumerable)
Query and manipulate data by using ADO.NET
This objective may include but is not limited to: Query and manipulate data by using Connection, DataReader, Command, DataAdapter, DataSet; Perform synchronous and asynchronous operations; Manage transactions (API)
Create an Entity Framework data model.
This objective may include but is not limited to: Structure the data model using Table per type, table per class, table per hierarchy; Choose and implement an approach to manage a data model (code first vs. model first vs. database first); implement POCO objects; Describe a data model by using conceptual schema definitions, storage schema definition, and mapping language (CSDL, SSDL, MSL)
Designing and Implementing WCF Services (19%)
Create a WCF service
This objective may include but is not limited to: Create contracts (service, data, message, callback, and fault); implement message inspectors; implement asynchronous operations in the service
Configure WCF services by using configuration settings
This objective may include but is not limited to: Configure service behaviors; Configure service endpoints; configure binding; specify a service contract; expose service metadata (XSDs, WSDL, and metadata exchange endpoint)
Configure WCF services by using the API
This objective may include but is not limited to: Configure service behaviors; Configure service endpoints; configure binding; specify a service contract; Expose service metadata (XSDs, WSDL, and metadata exchange); WCF routing and discovery features
Secure a WCF service
This objective may include but is not limited to: Implement message level security, implement transport level security; implement certificates
Consume WCF services
This objective may include but is not limited to: Generate proxies by using SvcUtil; generate proxies by creating a service reference; create and implement channel factories
Version a WCF service
This objective may include but is not limited to: Version different types of contracts (message, service, data); configure address, binding, and routing service versioning
Create and configure a WCF service on Windows Azure
This objective may include but is not limited to: Create and configure bindings for WCF services (Azure SDK-- extensions to WCF); Relay bindings to Azure using service bus endpoints; integrate with the Azure service bus relay
Implement messaging patterns
This objective may include but is not limited to: Implement one way, request/reply, streaming, and duplex communication; implement Windows Azure Service Bus and Windows Azure Queues
Host and manage services
This objective may include but is not limited to: Manage services concurrency (single, multiple, reentrant); Create service hosts; Choose a hosting mechanism; choose an instancing mode (per call, per session, singleton); activate and manage a service by using AppFabric; implement transactional services; host services in an Windows Azure worker role
Creating and Consuming Web API-based services (18%)
Design a Web API
This objective may include but is not limited to: define HTTP resources with HTTP actions; plan appropriate URI space, and map URI space using routing; choose appropriate HTTP method (get, put, post, delete) to meet requirements; choose appropriate format (Web API formats) for responses to meet requirements; plan when to make HTTP actions asynchronous
Implement a Web API
This objective may include but is not limited to: accept data in JSON format (in JavaScript, in an AJAX callback); use content negotiation to deliver different data formats to clients; define actions and parameters to handle data binding; use HttpMessageHandler to process client requests and server responses; implement dependency injection, along with the dependency resolver, to create more flexible applications; implement action filters and exception filters to manage controller execution; implement asynchronous and synchronous actions; implement streaming actions
Secure a Web API
This objective may include but is not limited to: implement HTTPBasic authentication over SSL; implement Windows Auth; enable cross-domain requests; prevent cross-site request forgery (XSRF); implement, and extend, authorization filters to control access to the application
Host and manage Web API
This objective may include but is not limited to: host Web API in an ASP.NET app; self-host a Web API in your own process (a Windows service); host services in a Windows Azure worker role; restricting message size; configure the host server for streaming
Consume Web API web services
This objective may include but is not limited to: consume Web API services by using HttpClient synchronously and asynchronously; send and receive requests in different formats (JSON/HTML/etc.)
Deploying Web Applications and Services (19%)
Design a deployment strategy
This objective may include but is not limited to: Create an IIS install package; deploy to web farms; deploy a web application by using XCopy; automate a deployment from TFS or Build Server
Choose a deployment strategy for a Windows Azure web application
This objective may include but is not limited to: Perform an in-place upgrade and VIP swap; configure an upgrade domain; create and configure input and internal endpoints; specify operating system configuration
Configure a web application for deployment
This objective may include but is not limited to: switch from production/release mode to debug mode; use SetParameters to set up an IIS app pool, set permissions and passwords); configure WCF endpoints, bindings, and behaviors; transform web.config by using XSLT (for example, across development, test, and production/release environments); configure Azure configuration settings
Manage packages by using NuGet
This objective may include but is not limited to: Create and configure a NuGet package; install and update an existing NuGet package; connect to a local repository cache for NuGet, set up your own package repository
Create, configure, and publish a web package
This objective may include but is not limited to: Create an IIS InstallPackage; configure the build process to output a web package; apply pre- and post- condition actions to ensure that transformations are correctly applied; include appropriate assets (web content, certificates)
Share assemblies between multiple applications and servers
This objective may include but is not limited to: Prepare the environment for use of assemblies across multiple servers (interning); sign assemblies by using a strong name; deploy assemblies to the global assembly cache; implement assembly versioning; create an assembly manifest; configure assembly binding redirects (for example, from MVC2 to MVC3)
Preparation Materials
Learning Plans and Classroom Training
-
Books
-
Practice Tests
-
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.
Other languages
This article is also available in other languages