Automate & Govern Project Sites with SPGA

In today's world, project management is critical to most business operations.  Whether it's an extensive IT infrastructure implementation or planning a small charity event for a non-profit organization, there is usually a need for someone to manage the cost, deadlines and risks.  Fortunately, SharePoint has become a dependent tool of choice, due to its broad scale of project friendly features and functionality that simplifies the organization and access to project related documentation and information.  Conversely, this adoption has dramatically increased the demand for new sites, quickly leading to site sprawl, and significant overhead on SharePoint Administrators.

With Site Provisioning & Governance Assistant (SPGA), you not only have the capability to automate these project site requests, but do so in a manner that empowers the project managers by allowing them to create their own sites within parameters defined by the SharePoint Admin.  In this article, I will walk you through the process of building out a request profile specifically dedicated to creating and managing new project sites.  

 

By the conclusion of this article, you will be able to accomplish the following:

  • Provide a Self-Service site provisioning mechanism for Project Managers
  • Define the web application and managed path of new Project Sites
  • Allow Requester to determine site access at point of creation
  • Predefined Requester Site Access
  • Capture Metadata from the New Request Form
  • Apply an Approval Workflow

 

Create a New Project Request Profile

  1. From your Provisioning Management Site Settings, click Request Profiles
  2. Click Add new item
  3. Provide a Name, Description for your Request Profile.  Select the "Project" tag, and choose the Site Collection template.  Click Save.
    (The Project Site template will only create provision subsites by default.  In this example, we want Project Sites to be new top-level site
    collections)
    RequestProfile_1.PNG

Editing the Project Request Profile

  1. From your Provisioning Management site's home page, locate the newly created Project Request Profile and select Execution Settings
    executionsettings_2.PNG

Modify Request Profile Inputs

In this section, we will modify the existing inputs from the Project Site template.  We will allow the requester to add site members and also add
metadata fields to capture information about the project duration and information classification.

  1. The first modification to the inputs will be to create a new field group for the additional metadata fields we are adding.  Click Add field group
    addfieldgroup_3.PNG
  2. Provide a name and description for your new field group, click Save
    fieldgroup.PNG
  3. Next, we will create an input field for the project duration.  Click Add Field
  4. Click the drop down next to the field type and click Change Field Type
    changefield_5.PNG
  5. From the input Picker menu, select Choice and click OK
    Choice_6.PNG
  6. Change the Field Group to the newly created one (Project Information)
  7. Provide a Field Name of ProjectDuration (spaces are no allowed) and a Display Name of Project Duration
  8. Leave the Property Value type defaulted to string and select the "Yes" radio button to make it required
  9. In the choices box, specify the choices and the desired choice display types.  In our example, we have 4 choices and will use radio buttons
    choiceinput_7.PNG
    choiceinput_8.PNG
  10. Click Save
  11. Repeat steps 1-10 to create a choice input for Classified vs.  Unclassified.  The inputs should look like the screenshot below
    classificationchoice_9.PNG
    classificationchoice_10.PNG
  12. Your final inputs should look like this
    finalinputs_11.PNG

Modify Activities

Fortunately, the out-of-the-box Site Collection template activities provide you with the foundation needed to quickly get started provisioning new 
Project Sites.  However, we will need to modify a few of them to ensure that sites get created within the proper web application and managed
path, and that the requester is made a Contributor, and not a site collection owner,

  1. Click the first activity, Set Execution Settings.  In order to modify the managed path where these sites are created, change "sites" to "projects".
    (The managed path must already exist)
    siteurl_12.PNG
  2. Click Save
  3. Next, we will modify the Create Site Collection with Top-Level Site activity.  Click it from the activity list
  4. In order to change the site template to a Project Site, click the function button next to Site Definition
    sitedef.PNG
  5. From the property picker, change the Property Group to Global Properties and change the Property to
    Sharepoint.SiteDefinitions.BasicMeetingWorkspace
    properties.PNG
  6. Click OK
  7. Next, we will change the Primary Site Collection owner information.  In this scenario, we want a group called Helpdesk to be owners
    and the requester to just be a contributor.  Click the Editor button next to Primary Site Collection Administrator Login.
  8. Input the name of the helpdesk or support security group
    helpdesk.PNG
  9. Click Save
  10. Repeat this process for the Primary Site Collection Administrator Name
    helpdesk2.PNG
  11. Specify an email address if desired for the Primary Site Collection Owner email.
  12. That completes the modifications to this activity, click Save
    sitecollectionactivity.PNG
  13. By default, the requestor is also a member of the Owners group on the site.  To remove that, click the activity titled Create
    Owners Group With Permission and Membership
  14. Click the Editor button next to Group Members, and clear out the value.  Click Save
    blank_groupmembers.PNG
  15. Click Save again
  16. To add the requester to the Contributors group, we will need to create a new Add Group Membership activity.  Click Add New Activity
  17. Change the Activity type to Add Group Membership
  18. Click the function button next to the Group box
  19. Change the Property Group to Execution Properties and the Property to Properties.Groups.Members
    groupmembers.PNG
  20. Click OK
  21. Click the function button next to Login Names
  22. Change the Property Group to Request and the Property to Request.CreatedBy.LoginName
    loginname.PNG
  23. Click OK
  24. Click Save
    addgroupmemactivity.PNG

Log Metadata - Promoted Fields

We would also like to log the captured metadata regarding the duration and classification of the project.  In order to that, we must create new
columns in our Assets list and then create Promoted Fields from within the request profile.

  1. Click on the Assets list from the Provisioning Site home page
  2. Click the List tab and List Settings
  3. Create two new columns Single Line of Text Columns called Expected Duration and Classification
    assetslist.PNG
  4. Return to the execution settings of your request profile
  5. Click Asset Settings
    assetsettings.PNG
  6. Click Add Promoted Field
  7. Change the Field Name to Expected Duration and then click the Editor button next to Field Value Expression
  8. Click Add Property
  9. Change the Property Group to Inputs and the Property to Properties.ProjectDuration
  10. Click OK
  11. Click Save
    expectedduration.PNG
  12. Click Save
  13. Repeat steps 1-12 for Classification
    promotedfields.PNG
  14. When new sites are created, your newly captured metadata will be stored in the Assets List
    assets.PNG

Add an Approval Workflow

SPGA also supports workflows when new requests are submitted.  These can be as simple as a SharePoint approval workflow, or more dynamic using SharePoint Designer or Visual Studio.  Simply add your workflow to your Provisioning Management site and you can instruct SPGA to use it when new requests are submitted.

  1. Open the execution settings of your Project Site request profile
  2.  Click Request Settings
    requestsettings.PNG
  3. Under Workflow Initialization, click Add a Workflow Initialization
    workflowinitialization.PNG
  4. On the New Workflow Initialization dialogue, choose the desired workflow from the dropdown and leave the remaining defaults.
    newworkflowinit.PNG
  5. Click Save

 

 

 

 

Have more questions? Submit a request

0 Comments

Please sign in to leave a comment.