Directory Image
This website uses cookies to improve user experience. By using our website you consent to all cookies in accordance with our Privacy Policy.

70-488 Free Demo Practice Test Software

Author: Peter Baumann
by Peter Baumann
Posted: Jul 27, 2017

Case Study: 1

Consolidated Messenger

Background

Business Scenario

You are the lead architect, developer, and web administrator of SharePoint 2013 for your company, Consolidated Messenger. Consolidated Messenger is a national company with hundreds of franchises. Consolidated Messenger focuses on bicycle-based courier services in metropolitan areas.

Consolidated Messenger sells franchises to franchisees. Franchisees have three user types:

Technical Scenario

When a franchisee purchases a franchise, they are provided with:

  • access to Consolidated Messenger's SharePoint 2013 multi-tenant farm located at https://sp.consolidatedmessenger.com
  • access to a Customers list in the Corporate site collection, named CorporateSiteCollection, which includes a list of all Customers across all franchisees
  • a single site collection for each franchisee, named FranchiseeSiteCollection
  • an unlimited number of customer subsites for each franchisee

Consolidated Messenger has funded the creation of three apps.

Solution Architecture

Site Collection Structure

SharePoint Farm Design

My Sites are not created for each Franchisee unless they are requested.

Business Requirements

Technical Requirements

Each Franchise site collection must include a SharePoint document library to store CSV files.

FranchiseMonitor App

Application Design

Franchise employees use Microsoft Excel 2013 to create a list of pick-up and drop-off locations for each bicycle courier for each day. The spreadsheet is named Appointments.csv.

Business Requirements

The FranchiseMonitor app must allow a Franchise employee to upload Appointments.csv to a SharePoint document library in each Franchisee site collection, and send Appointments.csv to the CloudManager app.

Technical Requirements

  • The FranchiseMonitor app must display the courier's location on the bicycle courier's microfeed on the SharePoint farm if the courier has remained stationary for more than three minutes.
  • The FranchiseMonitor app must be listed on the Site Contents page of the host web.
  • The FranchiseMonitor app must use claims-based authentication, once launched, to authenticate the franchisee against an API provided by Margie's Travel.
  • The FranchiseMonitor app must be deployed to all site collections by the SharePoint administrator.
  • The FranchiseMonitor app must be immediately available to be installed on websites within the tenancy on a website-by-website basis to any tenant contained in the SharePoint farm.
  • The FranchiseMonitor app must be able to create lists within SharePoint to store records of the CSV files so that they may be sent to the CloudManager app.

CourierMobile App

Application Design

  • Each bicycle courier for each franchise is provided a Microsoft Surface Pro device with LTE. Most bicycle couriers do not return their Microsoft Surface Pro devices back to their franchise locations nightly.
  • The CourierMobile app runs on the bicycle courier's Microsoft Surface Pro device.
  • Margie's Travel provides an API to enable external developers to authenticate by using OAuth and claims-based authentication. Many couriers are members of Margie's Travel.
  • The CourierMobile app receives Microsoft Outlook appointments and Outlook appointment cancellations from the CloudManager app. The appointments include the address of the location for pick-up or drop-off.

Business Requirements

  • The CourierMobile app must display a Bing map to display route data when Outlook appointments or appointment cancellations are received.
  • The CourierMobile app must capture the location of the Microsoft Surface Pro device on a regular interval. This data must be captured regardless of whether the device has connectivity.
  • The CourierMobile app must be able to connect to the SharePoint Customers list and verify whether the account belongs to the franchisee to avoid pickups or deliveries to customers that do not belongs to the franchisee. When the CourierMobile add accesses the Customers list, it must only read its contents with the minimum permissions necessary.

Technical Requirements

  • The CourierMobile app must provide the ability to authenticate by using the courier's Microsoft account or the Margie's Travel API.
  • The CourierMobile app must include a custom sign-in page that includes branding from Consolidated Messenger and Margie's Travel, based on the authentication provider selected by the user.
  • The CourierMobile app must be able to capture more than 30 million data points of location data daily as they occur and upload the location data to the cloud when connected to the Internet.

CloudManager App

Application Design

CloudManager processes two sets of data:

  • Updates to the list of appointments received from the FranchiseMonitor app
  • Geo-location data received from the CourierMobile app

Business Requirements

The CloudManager app must implement business logic that parses Appointments.csv and geo-location data and sends Appointments or Appointment cancellations to the CourierMobile app.

Technical Requirements

  • The CloudManager app must elastically scale to capture courier location data as the number of bicycle couriers increases or decreases.
  • The CloudManager app must process bicycle courier location data from a data store capable of storing more than 30 million items.

Solution Code

MyClaimsProvider.cs

AppManifest.xml for Franchise Monitor app

Question: 1

You need to ensure that the CourierMobile app determines whether the franchisee owns the account.

What should you do?

A. Use OAuth and App only security. Request the Read right from the http://sharepoint/content/ sitecollection/web/list scope URI.

B. Use OAuth and App+User security. Request the Read right from the http://sharepoint/content/ sitecollection scope URI.

C. Use SPSecurity.RunWithElevatedPrivileges to connect to SharePoint and read from the Accounts list in the site collection.

D. Use the SharePoint user credentials of the bicycle messenger to connect to SharePoint and read from the Accounts list in the site collection.

Answer: B

  • SharePoint users three types of authorization policies. The user-only policy requires only that the call to SharePoint include an authenticated user identity. The app-only policy requires only that the call include only an authenticated app identity. The user+app policy requires that the call include both kinds of authenticated identities.
  • You may have already heard that OAuth 2.0 plays an important role in the authentication and authorization of apps for SharePoint. It does, but it is not necessarily a part of the authorization story for every app for SharePoint. If you plan to build an app for SharePoint that runs in an remote web application and communicates back to SharePoint using server-side code, you will need to use OAuth.

Scenario:

  • The CourierMobile app must be able to connect to the SharePoint Customers list and verify whether the account belongs to the franchisee to avoid pickups or deliveries to customers that do not belongs to the franchisee. When the CourierMobile add accesses the Customers list, it must only read its contents with the minimum permissions necessary.
  • Margie's Travel provides an API to enable external developers to authenticate by using OAuth and claims-based authentication. Many couriers are members of Margie's Travel

Reference: Authorization and authentication of apps for SharePoint 2013

Question: 2

A franchisee deletes several sites from the franchise's site collection. The franchisee site collection administrator must recover the sites.

You need to instruct the franchisee site collection administrator on how to access the page to recover the sites.

What should the site collection administrator do to get to the appropriate page?

A. Select General Settings for the Web Application in Central Administration and change the second stage Recycle Bin settings to 100 percent.

B. Select General Settings for the Web Application in Central Administration and change the first stage Recycle Bin settings to 0 days.

C. Select the Recycle Bin on the Site Settings page. Choose the appropriate sites and select Restore Selection.

D. Select the Recycle Bin in the Quick Launch page. Choose the appropriate sites and select Restore Selection.

Answer: D

To restore a deleted site or workspace directly from the Site Collection Recycle Bin:

  1. Click Recycle Bin on the Quick Launch.
  2. On the Site Name Recycle Bin page, above the list of deleted objects, click the Site Collection Recycle Binlink.
  3. On the Site Collection Administration Recycle Bin page, under Select a View, make sure that Deleted from end user Recycle Bin is selected.
  4. Locate the site or workspace that you want to restore.
  5. Select the check box next to the site or workspace that you want to restore, and then click Restore Selection.

Incorrect:

Not A, not B: The sites have been deleted. They need to be restored. A and B are wrong because modifying the Recycle Bin settings after the sites are deleted will have no effect on the deleted sites.

Reference: Restore a deleted object from a SharePoint Recycle Bin

Question: 3

You need to ensure that the CloudManager app can write route progress check-ins to the courier's microfeed.

What should you do? (Each correct answer presents part of the solution. Choose all that apply.)

A. Ensure that SP.RequestExecutor.js can be accessed in a browser window with no errors.

B. Ensure that the CloudManager app has the Manage permission request scoped to the URL for the franchisee's My Site.

C. Ensure that the MySite host is provisioned for each franchisee.

D. Ensure that all cookies are made available between the My Site and the CloudManager app domain.

E. Ensure that the CloudManager app has the Write permission request scoped to the URL for the franchisee's My Site.

F. Ensure that SP.UserProfiles.js can be accessed in a browser window with no errors.

Answer: A, B, D, E

  • From scenario:

/ Business Requirements

The FranchiseMonitor app must allow a Franchise employee to upload Appointments.csv to a SharePoint document library in each Franchisee site collection, and send Appointments.csv to the CloudManager app.

/ The FranchiseMonitor app must display the courier's location on the bicycle courier's microfeed on the SharePoint farm if the courier has remained stationary for more than three minutes.

/ The CloudManager app must implement business logic that parses Appointments.csv and geo-location data and sends Appointments or Appointment cancellations to the CourierMobile app.

Question: 4

DRAG DROP

Some franchisees want to launch the FranchiseMonitor app from a link named Launch Franchise Monitor that is displayed next to the name of the user who is currently logged in. Other franchisees do not want to have the link present. The link must be contained within the same out-of-the-box control, as shown in the screenshot below:

You need to configure support for the Launch Franchise Monitor link.

Which four actions should you perform in sequence? (To answer, move the appropriate actions from the list of actions to the answer area and arrange them in the correct order.)

Answer:

Box 1:

Box 2:

Box 3:

Box 4:

Note:

Box 1 (see box 4): Empty elements are most often used to define SharePoint project items that lack a project or project item template in Visual Studio. When you add an empty element to your project, a node named EmptyElement[x] (where [x] is a unique number) is created. EmptyElement[x] contains a single file that is named Elements.xml. Use XML statements to define the desired elements in Elements.xml.

Box 2: SuiteLinksDelegate delegate control allow us to add links in right suite bar like "Newsfeed","Sites" etc.

Box 3: User Control Code Behind:

protected override void Render(HtmlTextWriter writer) etc.

Box 4: For all these delegate controls, you need to add a reference in Elements.xml file to specify the control id and control source properties:

Reference: New Delegate Controls in SharePoint 2013

Question: 5

You need to implement the custom claims provider for the SharePoint farm.

Which code segments should you implement? (Each correct answer presents part of the solution. Choose all that apply.)

A. Option A

B. Option B

C. Option C

D. Option D

E. Option E

F. Option F

Answer: B, D, F

The following are required methods when writing a claims provider.

B: Required for claims picker

Claims can be displayed in the people picker control through claims picking. The following methods in the SPClaimProvider class are required methods if you want to implement claim picking in the people picker control.

protected abstract void FillSchema(SPProviderSchema schema);

protected abstract void FillClaimTypes(List claimTypes);

protected abstract void FillClaimValueTypes(List claimValueTypes);

protected abstract void FillEntityTypes(List entityTypes);

D: Required for resolving claims in the type-in control of the claims picker

If you want to be able to resolve claims by using the type-in control of the claims picker, you must implement the following methods in the SPClaimProvider class.

public abstract bool SupportsResolve

protected abstract void FillResolve(Uri context, String[] entityTypes, String resolveInput, List resolved);

protected abstract void FillResolve(Uri context, String[]

F: Required for searching for claims in the claims picker

If you want to be able to search for claims in the claims picker, you must implement the following property and method in the SPClaimProvider class.

public abstract bool SupportsSearch

protected abstract void FillSearch(Uri context, String[] entit

  • From scenario:

MyClaimsProvider.es

Reference: How to: Create a claims provider in SharePoint 2013

Question: 6

You need to set the appropriate permissions for the franchise employees' customer list and customer subsite access.

What should you do?

A. Add franchise employees to the Members group in the CorporateSiteCollection site collection. Break inheritance at the franchisee subsite level. Create a custom role definition at the franchisee subsite level. Add franchise employees to the custom role.

B. Create a custom role definition in the CorporateSiteCollection site collection with Limited Access to the Customers list. Add franchise employees to the custom role at the CorporateSiteCollection site collection. Break inheritance at the subsite level. Add franchise owners to the Owners group at the subsite level.

C. Create a custom role definition in the CorporateSiteCollection site collection with Limited Access to the Customer list. Add franchise employees to the custom role. Allow full inheritance of the role definition and permissions at the site level.

D. Add franchise employees to the Visitors group in the CorporateSiteCollection site collection. Break inheritance at the franchisee subsite level. Create a custom role definition at the subsite level with Full Control permissions. Add franchise employees to the custom role.

Answer: B

Question: 7

You need to create rules in the CourierMobile app based on the ItemType that arrives.

For which ItemTypes should you test? (Each correct answer presents part of the solution. Choose all that apply.)

A. IPM.Schedule.Meeting.Tent

B. IPM.Note

C. IPM.Schedule.Meeting.Request

D. IPM.Appointment

E. IPM.Schedule.Meeting.Cancelled

F. IPM.Schedule.Meeting.Pos

G. IPM.Schedule.Meeting.Neg

Answer: D, E

From scenario:

  • The CourierMobile app receives Microsoft Outlook appointments (D) and Outlook appointment cancellations (E) from the CloudManager app. The appointments include the address of the location for pick-up or drop-off.

Question: 8

You need to meet the requirements for data storage for the CourierMobile app and the CloudMananger app.

Which technologies should you use? (Each correct answer presents part of the solution. Choose all that apply.)

A. Windows Azure SQL Database

B. SharePoint content database

C. Secure Store

D. SQL Server Express LocalDB

E. SharePoint list

Answer: A, D

A: SQL Azure in the cloud.

D: LocalDB is a lightweight version of Express that has the same programmability features, but it runs in user mode and has a fast, zero-configuration installation and a short list of prerequisites.

From scenario:

  • CourierMobile App

The CourierMobile app must be able to capture more than 30 million data points of location data daily as they occur and upload the location data to the cloud when connected to the Internet.

  • Cloudmanager App

/ The CloudManager app must elastically scale to capture courier location data as the number of bicycle couriers increases or decreases.

/ The CloudManager app must process bicycle courier location data from a data store capable of storing more than 30 million items.

Question: 9

HOTSPOT

You need to select the app experience for the CourierMobile app.

In the App for Office 2013 dialog window, which configuration option should you select? (To answer, select the appropriate configuration option in the answer area.)

Answer:

Scenario: The CourierMobile app receives Microsoft Outlook appointments and Outlook appointment cancellations from the CloudManager app. The appointments include the address of the location for pick-up or drop-off.

Question: 10

You need to create a custom sign-in page to allow the users of the FranchiseMonitor app to authenticate against SharePoint and Margie's Travel API.

What should you do?

A. Create an app for SharePoint. Set the trust level to Sandbox solution. Create an application page that writes a cookie named FedAuth. Deploy the app and configure the Sign In Page URL in Central Administration Authentication Provider for the zone.

B. Create an app for SharePoint. Set the trust level to Farm solution. Create an application page that writes a cookie named FedAuth. Deploy the app and configure the Sign In Page URL in Central Administration Authentication Provider for the zone.

C. Create an app for SharePoint. Set the trust level to Farm solution. Create an application page that writes a cookie named ASPXAUTH. Deploy the app and configure the Sign In Page URL in Central Administration Authentication Provider for the zone.

D. Create an app for SharePoint. Set the trust level to Sandbox solution. Create an application page that writes a cookie named ASPXAUTH. Deploy the app and configure the Sign In Page URL in Central Administration Authentication Provider for the zone.

Answer: B

The new claims-based authentication in SharePoint 2010 does not use the ASPXAUTH cookie, instead it uses the FedAuth cookie.

SharePoint 2013 tracks FedAuth cookies in the new distributed cache service using Windows Server AppFabric Caching.

Scenario: The FranchiseMonitor app must use claims-based authentication, once launched, to authenticate the franchisee against an API provided by Margie's Travel.

Question: 11

HOTSPOT

You need to design the FranchiseMonitor app to meet the requirements.

What should you do? (To answer, select the appropriate option from each drop-down list in the answer area.)

Answer:

Box 1: App for SharePoint 2013

Scenario:

The FranchiseMonitor app must allow a Franchise employee to upload Appointments.csv to a SharePoint document library in each Franchisee site collection, and send Appointments.csv to the CloudManager app.

The FranchiseMonitor app must be able to create lists within SharePoint to store records of the CSV files so that they may be sent to the CloudManager app.

Box 2: Immersive Full Page

Scenario: The FranchiseMonitor app must display the courier's location on the bicycle courier's microfeed on the SharePoint farm if the courier has remained stationary for more than three minutes.

  • Immersive (or full-page app): This shape provides a fully immersive experience by using the entire page. While this gives you complete control over the app experience, it is important to make sure that your app properly links back to the SharePoint site, so the user experience feels integrated and not lost. To make this simple, we provide a chrome control that not only lets your app automatically point a user back to their SharePoint environment, but it also provides your app with the current SharePoint cascading style sheet (CSS). So when SharePoint changes its CSS, say, through a theming change, your app will change its look and feel as well.

Reference: Deciding between apps for SharePoint and SharePoint solutions

Question: 12

HOTSPOT

You need to design the CloudManager app to meet the requirements.

What should you do? (To answer, select the appropriate option from each drop-down list in the answer area.)

Answer:

Box 1: App for SharePoint 2013

Box 2: Immersive Full Page

  • Immersive (or full-page app): This shape provides a fully immersive experience by using the entire page. While this gives you complete control over the app experience, it is important to make sure that your app properly links back to the SharePoint site, so the user experience feels integrated and not lost. To make this simple, we provide a chrome control that not only lets your app automatically point a user back to their SharePoint environment, but it also provides your app with the current SharePoint cascading style sheet (CSS). So when SharePoint changes its CSS, say, through a theming change, your app will change its look and feel as well.

Reference: Deciding between apps for SharePoint and SharePoint solutions

Question: 13

HOTSPOT

You need to add markup at line AM10 to set the minimum app permissions for the FranchiseMonitor app.

Which code segments should you include in Target 1 and Target 2 to complete the code? (To answer, select the appropriate options from each drop-down list in the answer area.)

Answer:

URL: Sharepoint/content/sitecollection/web

The website where the app is installed. Includes all children of this scope.

Scenario: The FranchiseMonitor app must be able to create lists within SharePoint to store records of the CSV files so that they may be sent to the CloudManager app.

Incorrect:

URL: http://sharepoint/content/tenant

The tenancy where the app is installed. Includes all children of this scope.

URL: http://sharepoint/content/sitecollection/web/list

All the lists in the website where the app is installed. Includes all children of this scope.

Question: 14

HOTSPOT

You need to replace the markup at lines AM17 through line AM20 to set the minimum app permissions for the FranchiseMonitor app.

Which markup segments should you include in Target 1 and Target 2 to complete the markup? To answer, select the appropriate options from each drop-down list in the answer area.

Answer:

Scenario:

  • The FranchiseMonitor app must allow a Franchise employee to upload Appointments.csv to a SharePoint document library in each Franchisee site collection, and send Appointments.csv to the CloudManager app.
  • The FranchiseMonitor app must be able to create lists within SharePoint to store records of the CSV files so that they may be sent to the CloudManager app.

About the Author

Successfully passing an important test can be a time consuming and monotonous process.

Rate this Article
Leave a Comment
Author Thumbnail
I Agree:
Comment 
Pictures
Author: Peter Baumann

Peter Baumann

Member since: Jul 26, 2017
Published articles: 30

Related Articles