70-489 Developing Microsoft SharePoint Server 2013 Advanced Solutions Study Notes
RobertKaucher
Member Posts: 4,299 ■■■■■■■■■■
I'm planning on taking this exam soon so I am going to start posting my notes here. I also have them in a OneNote book that I will share via this thread once it's a little more complete. Microsoft is currently offering a 3-for-1 voucher on the MCSD tracks, it's good through May, 2014.
In every section you will find links to PluralSight videos. I am not affiliated with them but I find their material to be exceptionally helpful.
Download the MOC companion material from the MS site. These, combined with Azure or some VMs, can really help by showing some demo code for example labs.
Developing SharePoint Server Advanced Solutions Jump Start
I could not find this on the MVA site. I'm not sure why. The Jump Start for the "core solutions" exam is on the MVA, though.
General Print Study Material
Inside Microsoft SharePoint 2013 - This is a must have reference for every SharePoint developer or admin.
Microsoft SharePoint 2013 Developer Reference - This is a really good book, especially for a .NET developer who is new to SharePoint. It was a lot less helpful for this exam than it was for the 488 but still a very good reference.
SharePoint 2013 Branding and User Interface Design - Not specifically related tot he exam... but if you plan on doing any UI customization, this is an excellent starting point. I've owned the previous editions as well.
70-489 Study Guide - Developing Microsoft SharePoint Server 2013 Advanced Solutions - I am reading this now. I cannot official recommend it as I have not gotten all the way through yet.
Update:
On the first of March, 2014 I passed the exam with 781. I have included my thoughts on preparing for an taking the exam on my blog. I did poorly on the BCS topic, so even though I have not included any of my BCS notes on this site yet, I will be doing so shortly as that is going to be a topic of professional importance to me and as I apparently do not have as much of a handle on it as I thought, I am going to spend 3 days really focusing on the topic.
In every section you will find links to PluralSight videos. I am not affiliated with them but I find their material to be exceptionally helpful.
Download the MOC companion material from the MS site. These, combined with Azure or some VMs, can really help by showing some demo code for example labs.
Developing SharePoint Server Advanced Solutions Jump Start
I could not find this on the MVA site. I'm not sure why. The Jump Start for the "core solutions" exam is on the MVA, though.
General Print Study Material
Inside Microsoft SharePoint 2013 - This is a must have reference for every SharePoint developer or admin.
Microsoft SharePoint 2013 Developer Reference - This is a really good book, especially for a .NET developer who is new to SharePoint. It was a lot less helpful for this exam than it was for the 488 but still a very good reference.
SharePoint 2013 Branding and User Interface Design - Not specifically related tot he exam... but if you plan on doing any UI customization, this is an excellent starting point. I've owned the previous editions as well.
70-489 Study Guide - Developing Microsoft SharePoint Server 2013 Advanced Solutions - I am reading this now. I cannot official recommend it as I have not gotten all the way through yet.
Update:
On the first of March, 2014 I passed the exam with 781. I have included my thoughts on preparing for an taking the exam on my blog. I did poorly on the BCS topic, so even though I have not included any of my BCS notes on this site yet, I will be doing so shortly as that is going to be a topic of professional importance to me and as I apparently do not have as much of a handle on it as I thought, I am going to spend 3 days really focusing on the topic.
Comments
-
RobertKaucher Member Posts: 4,299 ■■■■■■■■■■[FONT="]SharePoint2013 Search Service[/FONT]
[FONT="]You should beable to explain what each component is responsible for as well as describe theAPIs that can be used and under which circumstances you would choose one APIover the others.[/FONT]
[FONT="] [/FONT]
[FONT="]Describethe SharePoint Search Architecture[/FONT]- [FONT="]SharePoint 2013 Search Back To Front: SharePoint 2013 Search Overview[/FONT][FONT="] - Matthew McDermott [/FONT]
- [FONT="]Search Architecture, Sizing, and Migration in Microsoft SharePoint 2013[/FONT][FONT="] -Thomas Molbach, Barry Waldbaum[/FONT]
[FONT="]Describethe structure of the search index[/FONT]
[FONT="]In SharePoint2013 [Microsoft has] now adopted a Partition/Replica model to define functionswithin the overall search index, as shown below. Partitions are logicaldivisions of the overall search index. The entire index is composed of theaggregation of all the primary replicas across the logical partitions. Whencontent is sent to the indexing component, a transaction is generated toacknowledge receipt of the content. Each partition then indexes the contentfrom this transaction log. Secondary replicas are created as read only copiesof the primary replica for scaling query volume of adding redundancy to theoverall architecture.[/FONT]
[FONT="] [/FONT]
[FONT="]Within apartition, there is only one primary replica that is responsible for writingdata in the partition. Each partition can be served by one or more replicas ofthe index. The indexing component is responsible for managing and distributingthe index across partitions. If an additional partition is added, the indexingcomponent is responsible for the re-distribution of data across all thepartitions. It is important to note that you can add additional partitionswithout re-indexing the data, but removal of a partition will force a complete re-indexing of allcontent.[/FONT]
[FONT="]From <[/FONT]http://www.bainsight.com/resources/BA-Insight-SharePoint-2013-Enterprise-Search-Guide.pdf>
[FONT="]Index partitions[/FONT]- [FONT="]You can divide the index into discrete portions, each holding a separate part of the index.[/FONT]
- [FONT="]An index partition [/FONT][FONT="]is stored in a set of files on a disk[/FONT][FONT="].[/FONT]
- [FONT="]The search index is the aggregation of all index partitions.[/FONT]
[FONT="]Index replicas[/FONT]- [FONT="]Each index partition holds one or more index replicas that contain the same information.[/FONT]
- [FONT="]You have to provision one index component for each index replica.[/FONT]
- [FONT="]To achieve fault tolerance and redundancy, create additional index replicas for each index partition and distribute the index replicas over multiple application servers.[/FONT]
[FONT="] [/FONT]
[FONT="]Describewhat a crawled property is and how they are created[/FONT]
[FONT="]A crawled property is contentand metadata that is extracted from an item, such as a document or aURL, during a crawl. A crawled property can be an author, title, or subject. To include the content andmetadata of crawled properties in the search index, you map crawled propertiesto managed properties. Managed properties can have a large number ofsettings, or attributes. These attributes determine how the contents are shownin search results. The search schema contains the attributes on managedproperties and the mapping between crawled properties and managed properties.[/FONT]
[FONT="] [/FONT]
[FONT="]From<Overview of crawled and managed properties in SharePoint Server 2013>[/FONT]
[FONT="]Describewhat a managed property is and how they are created[/FONT]
[FONT="]Managedproperties are mappings to crawled properties that can be used in various waysin search.[/FONT]- [FONT="]Understanding and Getting SharePoint 2013 Search Managed Properties to Work[/FONT]
- [FONT="]How to: Use the Content Enrichment web service callout for SharePoint Server[/FONT]
- [FONT="]SharePoint 2013 Search Development: Enhancing Content Processing[/FONT][FONT="] - Scot Hillier [/FONT]
- IContentProcessingEnrichmentService[FONT="] interface[/FONT]
- Namespace: Microsoft.Office.Server.Search.ContentProcessingEnrichment
- Assembly: Microsoft.Office.Server.Search.ContentProcessingEnrichment
- [FONT="]Members:[/FONT] ProcessItem(Item item); [FONT="]Processes the received Item and returns the result as a [/FONT]ProcessedItem[FONT="].[/FONT]
[FONT="]Describethe various settings of a managed property[/FONT]
[FONT="]Type[/FONT]
[FONT="]Main characteristics[/FONT]
[FONT="]Text[/FONT]
[FONT="]Integer[/FONT]
[FONT="]Decimal[/FONT]
[FONT="]Date and Time[/FONT]
[FONT="]Yes/No[/FONT]
[FONT="]Double precision float[/FONT]
[FONT="]Binary[/FONT]
[FONT="]Searchable[/FONT]
[FONT="]Advanced Searchable Settings (optional, if Searchable is selected)[/FONT]
[FONT="]Queryable[/FONT]
[FONT="]Retrievable[/FONT]
[FONT="]Allow multiple values[/FONT]
[FONT="]Refinable[/FONT]
[FONT="]Sortable[/FONT]
[FONT="]Alias[/FONT]
[FONT="]Token Normalization[/FONT]
[FONT="]Complete Matching[/FONT]
[FONT="]See<[/FONT]http://technet.microsoft.com/en-us/library/jj219667.aspx>
[FONT="]
SharePointSearch 2013: Why are there so many Managed Properties?[/FONT]
[FONT="] [/FONT]
[FONT="]Modifythe search schema at various levels[/FONT]
[FONT="]IntroducingSearch Schema for SharePoint 2013[/FONT]
[FONT="]The search schemais stored in the Search Administration database. The search schema contains:[/FONT]- [FONT="]The mapping between crawled properties and managed properties. This can be a mapping from one crawled property to one managed property, from one to many, many to one or even a many to many mapping.[/FONT]
- [FONT="]How the managed properties should be written to the search index. For example, to which full-text index the values of the managed properties should be written and to which weight group (context).[/FONT]
- [FONT="]The settings for the different managed properties. For example, if you can search on, query on, or refine search results by particular managed properties.[/FONT]
- [FONT="]Crawled property categories that group properties according to their IFilter or protocol handler. If you edit a crawled property category, your changes apply to all of the crawled properties within the category. This can influence performance and how items are saved in the search index.[/FONT]
[FONT="]From<Overview of the search schema in SharePoint Server 2013>[/FONT]
[FONT="] [/FONT]- [FONT="]To add a managed property[/FONT]
- [FONT="]To edit a managed property[/FONT]
- [FONT="]To delete a managed property[/FONT]
- [FONT="]To map a crawled property to a managed property[/FONT]
- [FONT="]To view or edit crawled property categories[/FONT]
[FONT="]Managed property setting[/FONT]
[FONT="]Action[/FONT]
[FONT="]Full crawl to reindex[/FONT]
[FONT="]Mapping a crawled to a managed property[/FONT]
[FONT="]Add/Delete mapping[/FONT]
[FONT="]Yes[/FONT]
[FONT="]Token normalization[/FONT]
[FONT="]Enable/Disable[/FONT]
[FONT="]Yes[/FONT]
[FONT="]Complete matching[/FONT]
[FONT="]Enable/Disable[/FONT]
[FONT="]Yes[/FONT]
[FONT="]Company name extraction[/FONT]
[FONT="]Enable/Disable[/FONT]
[FONT="]Yes[/FONT]
[FONT="]Custom entity extraction[/FONT]
[FONT="]Enable/Disable[/FONT]
[FONT="]Yes[/FONT]
[FONT="]Searchable[/FONT]
[FONT="]Enable/Disable[/FONT]
[FONT="]Yes[/FONT]
[FONT="]Queryable[/FONT]
[FONT="]Enable[/FONT]
[FONT="]Yes[/FONT]
[FONT="]Queryable[/FONT]
[FONT="]Disable[/FONT]
[FONT="]No[/FONT]
[FONT="]Retrievable[/FONT]
[FONT="]Enable[/FONT]
[FONT="]Yes[/FONT]
[FONT="]Retrievable[/FONT]
[FONT="]Disable[/FONT]
[FONT="]No[/FONT]
[FONT="]Refinable[/FONT]
[FONT="]Enable (if not already Sortable)[/FONT]
[FONT="]Yes[/FONT]
[FONT="]Refinable[/FONT]
[FONT="]Disable[/FONT]
[FONT="]No[/FONT]
[FONT="]Sortable[/FONT]
[FONT="]Enable (if not already Refinable)[/FONT]
[FONT="]Yes[/FONT]
[FONT="]Sortable[/FONT]
[FONT="]Disable[/FONT]
[FONT="]No[/FONT]
[FONT="]Alias[/FONT]
[FONT="]Add/Delete[/FONT]
[FONT="]No[/FONT]
[FONT="]From <[/FONT]http://technet.microsoft.com/en-us/library/jj219667.aspx>
[FONT="]Suggested Labs[/FONT]
Build an aSharePoint App that uses KQL to retrieve search results.
Keyword Query Language (KQL) syntax reference
https://blogs.perficient.com/microsoft/2012/11/sharepoint-2013-search-part-2-richer-query-language/
Configure somecustom result types and display templates and customizing a Hover Panel DisplayTemplate.
SharePoint2013 Search Development: Extending the Search Center
SharePoint2013 Search Back To Front: SharePoint Search Results Presentation
SharePoint2013 Search Back To Front: SharePoint 2013 Search Troubleshooting
-
RobertKaucher Member Posts: 4,299 ■■■■■■■■■■NOTE: Even though you might be a farm admin, you will not see the options to add terms or term sets unless you are added to the Term Store Administrators.
MMS Administration
There are a lot of cases where as a SharePoint developer you need to know the administration/IT Pro side of SharePoint and MMS is certainly one of those areas.- Add or remove service application connections from a web application in SharePoint 2013
- Share service applications across farms in SharePoint 2013
- Overview of managed metadata service applications in SharePoint Server 2013
- Plan to share term sets and content types in SharePoint Server 2013
- Managed metadata and navigation in SharePoint 2013
- Deep Dive on Integrating SharePoint Metadata with other Metadata Stores [This is an amazing resource]
- SharePoint 2013: Import a term set from an external source - This is probably one of the most common tasks that developers will perform in relation to the Managed Metadata Service, because of this I expect this to be covered in some detail in the exam.
- Managed metadata and navigation in SharePoint 2013
- Using Taxonomy AKA Managed Metadata AKA TermSets with CSOM in SharePoint 2013
Taxonomy: A corporate taxonomy is the hierarchical classification of entities of interest of an enterprise, organization or administration, used to classify documents, digital assets and other information. Taxonomies can cover virtually any type of physical or conceptual entities (products, processes, knowledge fields, human groups, etc.) at any level of granularity.
Folksonomy: A folksonomy is a system of classification derived from the practice and method of collaboratively creating and managing tags to annotate and categorize content; this practice is also known as collaborative tagging, social classification, social indexing, and social tagging.
Group: A logical container of Term Sets where security can be configured via assigning Group managers and contributors.
Term Set: Contain Terms and can be configured for notification of term suggestions, stakeholder alerts, and submission policy.
Terms: A value that can be assigned as a descriptive attribute (tag, keyword) of an item or document. There is a 7 level limit on child terms.
See Introduction to managed metadata for more detail.
JSOM (JavaScript CSOM) Important Classes and Name Spaces
JSOM Taxonomy Reference- SP.Taxonomy
- TaxonomySession
- getDefaultSiteCollectionTermStore()
- get_termStores()
- TermStore
- getTerm()
- getChanges() A very important method! See the deep dive video.
- TermGroup
- getByName()
- getById()
- getTerms()
- TermGroupCollection
- Term
- TaxonomySession
Server OM
I'll update this later.
Suggested Labs- Write a PowerShell script or console application that can automate the configuration of MMS term sets.
- Write a PowerShell script or console application that can keep 2 different term stores (MMS and something else like an HR application).
- White a SharePoint-Hosted app that can list all of the groups and term sets in the default term store.
-
RobertKaucher Member Posts: 4,299 ■■■■■■■■■■This is a topic I just can't seem to find much on and I think the material in the 20489B class I took spent literally 15 minutes on the topic. I'm not sure what that means regarding test content... Hopefully this topic won't be probed in much detail.
[FONT=&]
General Performance Videos[/FONT]
[FONT=&]SharePoint 2013Performance and Capacity Management[/FONT]
[FONT=&]Making Fast Sites Faster with Performance-related Features in SharePoint 2013[/FONT]
[FONT=&]Image Renditions[/FONT]
[FONT=&]SharePoint2013 Design Manager image renditions[/FONT]
Manage Image Renditions[FONT=&]
[/FONT]
[FONT=&]ResponsiveImage Renditions with SharePoint 2013[/FONT]
[FONT=&]Distributed Cache[/FONT]
[FONT=&]THE FIVE MINUTE ****-SHEET ON SHAREPOINT 2013′S DISTRIBUTED CACHE SERVICE[/FONT]
[FONT=&]An excellent, short article but five minutes is really pushing it.[/FONT]
[FONT=&]SharePoint 2013: AppFabric and Distributed Cache Service[/FONT]
[FONT=&]Cache settings operations in SharePoint Server 2013[/FONT]
[FONT=&]Distributed Cache in SharePoint2013[/FONT]
[FONT=&]Health Score Rules[/FONT]
[FONT=&]Configure SharePoint Health Analyzer rules in SharePoint 2013[/FONT]
[FONT=&]SharePoint 2013: SharePoint Health Score and Throttling deep dive[/FONT]
[FONT=&]Developer Dashboard[/FONT]
[FONT=&]Overview of the SharePoint 2013 renewed developer dashboard[/FONT]
[FONT=&]Developer Dashboard in SharePoint 2013[/FONT]
[FONT=&]Etc...[/FONT]
[FONT=&]Configure Request Manager in SharePoint Server 2013[/FONT]
[FONT=&]SharePoint2013 Simplified - New Features in SharePoint 2013 – Part 4 (Request ManagementFunctionality)
[/FONT] -
RobertKaucher Member Posts: 4,299 ■■■■■■■■■■[FONT=&]General Material Related to the "Social Experience"[/FONT]
These are not exam specific but are included mostly for professional development. Many of these resources come from strategic or architectural perspectives and not strictly from a development perspective.
Deploying Social in the Enterprise | SharePoint Conference 2012 | Channel 9
Deep Dive of the Social Architecture in SharePoint 2013 | SharePoint Conference 2012 | Channel 9
Get Started with Social Adoption using SharePoint 2013's Cross Farm Services | SharePoint Conference 2012 | Channel 9
Breaking down the SharePoint 2013 Newsfeed | SharePoint Conference 2012 | Channel 9
Driving business strategy with Enterprise Social | SharePoint Conference 2012 | Channel 9
How Yammer and SharePoint are Approaching Social | SharePoint Conference 2012 | Channel 9
Lead the Enterprise Social Revolution: 5 Steps to Drive Culture Change | SharePoint Conference 2012 | Channel 9
Moving from Social theory to application by leveraging the Social adoption maturity model to help business users | SharePoint Conference 2012 | Channel 9
How to Extend Social in SharePoint 2013 | SharePoint Conference 2012 | Channel 9
Becoming a next-gen organization with SharePoint and Yammer | SharePoint Conference 2012 | Channel 9
Overview of Social CRM: Using Microsoft Social technologies for real business benefit | SharePoint Conference 2012 | Channel 9
An Overview of the Personalized SharePoint 2013 Social Experience | SharePoint Conference 2012 | Channel 9
Building Vibrant Communities in SharePoint 2013 | SharePoint Conference 2012 | Channel 9
Customer Showcase: How eBay built one integrated social network on SharePoint | SharePoint Conference 2012 | Channel 9
Customer Showcase: How Booz Allen is using Social capabilities of SharePoint and Yammer | SharePoint Conference 2012 | Channel 9
SharePoint 2013 Fun with SharePoint Social, CSOM and Windows 8 | SharePoint Conference 2012 | Channel 9
News Gator: Living and Breathing the Social Workplace | SharePoint Conference 2012 | Channel 9
User Profile
User Profile Synchronization Best Practices in SharePoint Server 2013 | SharePoint Conference 2012 | Channel 9 -
RobertKaucher Member Posts: 4,299 ■■■■■■■■■■What is the SharePoint 2013 Product Catalog - How to Set it Up
What is the SharePoint 2013 Product Catalog - How to Set it Up - YouTube
How to set up a product-centric website in SharePoint Server 2013
https://blogs.technet.com/b/tothesharepoint/archive/2013/02/14/how-to-set-up-a-product-centric-web-site-in-sharepoint-2013.aspx- [FONT=&]An introduction to cross-site publishing[/FONT].
- [FONT=&]Stage 1: Create site collections for cross-site publishing[/FONT].
- [FONT=&]Stage 2: Import list content into the Product Catalog Site Collection[/FONT].
- [FONT=&]Stage 3: How to enable a list as a catalog[/FONT].
- [FONT=&]Stage 4: Set up search and enable crawling of your catalog content[/FONT].
- [FONT=&]From site column to managed property - What's up with that?[/FONT]
- [FONT=&]Stage 5: Connect your publishing site to a catalog[/FONT].
- [FONT=&]Stage 6: Upload and apply a new master page to a publishing site[/FONT]
- [FONT=&]Stage 7: Upload page layouts and create new pages in a publishing site[/FONT]
- [FONT=&]Stage 8: Assign a category page and a catalog item page to a term[/FONT]
- [FONT=&]Stage 9: Configure the query in a Content Search Web Part on a category page[/FONT]
- [FONT=&]Stage 10: Configure the query in a Content Search Web Part on a catalog item page[/FONT]
- [FONT=&]Stage 11: Upload and apply display templates to the Content Search Web Part[/FONT]
- [FONT=&]Stage 12: Plan to use refiners for faceted navigation - Part I[/FONT]
- [FONT=&]Stage 13: Plan to use refiners for faceted navigation - Part II[/FONT]
- [FONT=&]Stage 14: Configure refiners for faceted navigation[/FONT]
- [FONT=&]Stage 15: Add refiners for faceted navigation to a publishing site[/FONT]
- [FONT=&]Stage 16: Add a Taxonomy Refinement Panel Web Part to a publishing site[/FONT]
eDiscovery is one of the areas where I am weakest. I've found it hard to find details about this topic from a developer perspective. It's been a little frustrating.
ConfigureeDiscovery in SharePoint 2013
eDiscovery in SharePoint2013
Multi-Lingual Sites
Overviewof SharePoint 2013 Multilingual Features
Plan for themultilingual user interface in SharePoint 2013
Plan formultilingual sites in SharePoint 2013