
Explanation/Reference:
Note:
* ChoiceFormatType enumeration members are Dropdown (A drop-down list box) and RadioButtons (Option buttons (also known as radio buttons).
* Scenario: The users will be able to set up task lists, mark tasks as completed, and manage their task lists.
Testlet 1
Background
Coho Winery implements a SharePoint farm. They have an intranet site for company employees and an extranet site for their customers. Coho Winery sells products to wholesale and retail customers. Customers must be able to order specific brands and pay directly.
Business Requirements
Site Collection
The company must organize its main enterprise site to have multiple site collections for different wine brands from various regions. Site documents must have a consistent look and feel.
New Features
The first version (1.0.0.0) of the feature must support the addition of newer functionality when the feature is upgraded to version 1.5.0.0.
Technical Requirements
General
A Document content type named Finance must be created at the site level. It must contain two site

columns named Customer Name and Transaction Date.
The Order Details and Payment Confirmation content types must be derived from the Finance content

type.
Workflows associated with document content types must be initiated when documents are generated.

When Payment Confirmation documents are generated, a workflow must send a notification to the

customer by email.
User Authorization
A custom role named Wholesale must be created. Wholesale customers must be assigned to this role

in order to view the promotions page.
A custom permission level must be created. This permission level must add the ViewPages permission

to the existing base permissions. This permission level must be added to Wholesale user role.
Anonymous users must be able to browse the site with limited access to resources.

The web application has been created with anonymous access enabled.

Users are prompted for credentials when they browse to the site.

Application Lifecycle Management
Versioning of the solution artifacts must adhere to industry best practices.

In a future upgrade process, a new site column named Division must be added to the Finance content

type programmatically.
Only one version of an assembly must be available at runtime.

Code based hot fixes must be deployed directly to the Global Assembly Cache on all SharePoint

servers.
During maintenance periods, content must be available but must not be modified.

Backup and Recovery
In the event of hardware failure, the SharePoint environment must be restored to the most recent date.

The backup process must not degrade system performance.

Performance Optimization and Memory Usage
SPSite objects must be removed from memory immediately after the objects go out of scope.
Automation
Windows PowerShell must be used to automate all operations wherever possible.
Application Structure
Relevant portions of the application files are shown below. (Line numbers in the code segments are included for reference only and include a two-character prefix that denotes the specific file to which they belong.)
ContentType.cs

UserAuthorization.cs

ContentType.Finance.Template.xml

ExportWholesaleSites.ps1
