Microsoft

Blog Categories

Subscribe to RSS feed

Archives

Follow our Microsoft Technologies board on Pinterest

Archive for the ‘SharePoint’ Category

Partner Spotlight – K2 Appit for SharePoint

Perficient has many great partners that support our development and deployment of the best of breed solutions we provide for our clients. This post is one of them in a series that will highlight some of the products available from our partners. Today, I’ll be presenting K2 and and their Workflow and Forms Apps for SharePoint in the Cloud.

SharePoint apps that bridge the cloud and your people k2_appit

K2 Appit for SharePoint is a cloud-based platform that allows you to easily deliver workflow and forms apps for SharePoint 2013 and SharePoint Online, without code. Use it to help your people get more work done, at any time and from anywhere, with real-time information that enables smarter, faster decisions.

K2 APPIT FOR SHAREPOINT DELIVERS:

  • NO INSTALLATION: The Appit cloud service doesn’t require any software installation and integrates with your SharePoint environment within minutes. You’ll be ready to focus on building great solutions before you know it.
  • EASY-TO-USE TOOLS: Intuitive, browser-based designers allow even non-technical users to quickly build workflows and forms directly in SharePoint.
  • SYSTEMS INTEGRATION: Appit apps can span line-of-business systems that reside on premises and in the cloud.
  • UNIVERSAL ACCESS: An enterprise-class workflow engine allows you to provide apps wherever your people work

A SMARTER WAY TO WORK WITH SHAREPOINT

With Appit, you can deliver SharePoint-based workflows and forms that link on-premises and cloud-based systems, to give your users the information they need. No code required.

Build workflow apps for SharePoint documents and lists.

  • Drag-and-drop design tools help you develop common workflow scenarios and allow you to easily share your designs for real-time collaboration with colleagues.
  • Flexible workflows integrate with SharePoint lists and libraries across multiple sites — even spanning SharePoint 2013 and SharePoint Online.
  • Mobile applications allow your team to take action, delegate, check status or find information, all from their phones or tablets.
  • A custom logic and rules engine gives you the power to build SharePoint workflow applications that fit your business needs precisely.

Build forms and workflows that combine SharePoint and line-of-business data.

  • Quickly create intuitive, easy-to-use forms from within a browser. Forms can be customized, and they are reusable to save time and ensure consistency.
  • Easily pull LOB data into SharePoint workflows and forms. Appit integrates with Microsoft CRM, Exchange, SQL Server and any other system that is available via Web services.
  • Provide a better user experience and help your team make smarter decisions with integrated forms, data and reporting.

 

To learn more about how K2 Appit for SharePoint can help you deliver workflow apps in all the places your people work, contact us. We’ll arrange a free demo.

Bing Your Way To Success – Tips Every Programmer Should Live By

When I was in school, I remember studying learning styles - “series of theories suggesting systematic differences in individuals’ natural or habitual pattern of acquiring and processing information in learning situations.” I was the always the Converger, very hands-on, figuring out things for myself, testing theories. For me, this started at an early age. I can remember being one of the first students in middle school to harness the power of the internet around 1992 – 1994. I remember discovering Lexus Nexis, Alta Vista, and later Yahoo to read academic papers and abstracts. Writings, facts, opinions, that just weren’t available in my school library, were now available on the computer. I learned how to draw information at my fingertips by using search engines. Even in the early days, this was way more informative than an old encyclopedia and way more fun!bing

Fast forward to my college years, my search engine skills continued to progress. As I learned C++, VB Script, and Java, I relied heavily on the internet for the most up to date information on techniques, theory, and examples. Books simply couldn’t keep up with the power of the internet and its ever growing database of information. It was a great way for me to learn and get through college; and it continues to be a very sharp tool in my tool belt today.

In this post, I’m going to show you a few search engine tricks so you can Bing your way to success!

1. Use Quotes to Find Exact Results

Read the rest of this post »

Webinar Recap: Migrating to SharePoint Online with @jasonbell

There’s a lot of interest around moving to the cloud, and specifically, SharePoint Online. Because of that, we’ve had several webinars over the summer that focus on SharePoint Online and SharePoint in a hybrid environment (you can view all our past Microsoft webinars here, beginning with the most recent). headache2

Despite that interest, migrations can be a bit of a headache (or in some cases, a debilitating migraine). But, if you do your research and plan properly, the process can be a fairly smooth one – possibly even your last, since once in the cloud, you shouldn’t need to do intensive upgrades or migrations in the future.

Last week, we held another session around SharePoint Online, this time focusing on Best Practices for a Successful SharePoint Migration or Upgrade to the Cloud.  My colleague, Jason Bell, a senior solution architect within our Microsoft practice, kicked off the webinar with the top reasons to move to SharePoint Online. Following this, he shared migration methodology, which includes your migration assessment, migration development, and the actual migration plan.

Next, Jason talked about the different migration approaches – manual, scripted, or the use of a third party tool like AvePoint, Metalogix, or Sharegate. He wrapped up with a discussion around secure cloud computing, including information rights management and the use of Office Web Apps.

For the full webinar replay, including an informative Q&A portion where Jason answered a ton of attendee questions, click here. You can also catch up with Jason on Twitter @jasonbell.

 

How to develop and deploy for SharePoint Online (Office 365)

With the rapidly evolving migration to the cloud SharePoint teams are faced with a new challenge: How do we develop and deploy for SharePoint Online?

If your feet have been firmly planted with on-premises development for SharePoint it can be a little daunting trying to move your process to the cloud. Where and how should we conduct development? How can we implement release through development, quality assurance and production?

This article aims to help you get started and is based upon the hands-on experience of working with SharePoint 2013 Online during the past 18 months.

Perficient Model

Development and Deployment for SharePoint Online

Develop for the Service

Above all recommendations it is highly advisable to build new features for the service using SharePoint Online. Whether you are writing CSOM, customizing a Master Page or building an App you should do this for the service and not in a local (on-premises) development environment. SharePoint Online offers a very rich API which is very extensible but it can be extremely sobering to realize the feature you just spent the last few weeks building relies upon a feature not available Online. If you are developing features for both Online and On-Premises you can always bring things back on-premises later.

With a MSDN subscription developers can provision their own Office 365 tenant and begin development within a few minutes. How many hours would this have taken for the developer to build their own VM for on-premises development? If the developer does not have an MSDN subscription they could always use a trial tenant on a temporary basis or pay for a single user tenant for indefinite use. When provisioning any new tenant for development ensure that it is under the same license as QA and production (e.g. E3).

Once a developer is ready to deploy and review new features they can do this on a separate Development (Integration) tenant accessible to the team. This Development Environment is typically used for demonstrations of new features, in SCRUM Review meetings for example.

Tenant Isolation

Consistent with any mature software development it is important to ensure that Development, QA and Production are properly isolated and permissions configured accordingly. Developers will most likely have full administrative access to Development but will only have read or less access to QA and Production. Keeping your developers out of Production is a key principle for stability and ensures good consistent deployment techniques are employed. It also ensures that we maintain healthy disagreements between developers and administrators which is as old as time and ensures the project is fun!

It helps to name tenants consistently. We usually use the convention:

  • https://<production tenant name>.sharepoint.com
  • https://<production tenant name>DEV.sharepoint.com
  • https://<production tenant name>QA.sharepoint.com

A key consideration with this isolation is how to maintain accounts across all three environments. Most likely the Production environment will have federated identities synchronized to the cloud with ADFS and DirSync or FIM. This allows us to work with corporate credentials in Production. However, a single domain can only be synchronized to one Office 365 tenant. So what should be configured for Development and QA? It is of course possible to build new domains (on-premises) and mirror the synchronization for Production. This is of course the most pure form of ensuring Development and QA are true representations of Production. However, this may be overkill for your development and testing needs.

It can be advantageous to use cloud accounts (onmicrosoft.com) in Development and QA, they are extremely lightweight and easy to manage as your team grows. Cloud accounts are particularly useful when working with professional services organizations as setup can usually avoid what might otherwise be a lengthy setup process. However, if your solution relies heavily on synchronized identities then it may be necessary to have Development and QA domains which mirror production.

Another key driver for isolating tenants in this way is that it ensures no global configuration changes during development can impact the production system. Consider the configuration of:

  • Content Types
  • Term Store Configuration
  • Tenant-level Search Managed Properties
  • Tenant-level Search Result Sources

One could argue that developing in a single Site Collection isolates development appropriately. However, the misconfiguration of these items alone could easily break a production system and take some time to recover from e.g. Search may need to re-crawl or the Content Type Hub will need to wait for a scheduled push.

Scripted Deployment

This article will not fully elaborate upon Scripted Deployment to SharePoint Online I will write another article shortly on this topic. However, it is an important principle of this model. Automating any task which is repeated can be a productivity benefit providing the time invested in developing the automation takes less time than repeating the task itself. Automation also significantly reduces chance of human error. It is less obvious how to automate deployments for SharePoint Online but the benefits are clear and have paid huge dividend for our teams working with the service.

What is Scripted Deployment? For SharePoint Online this means writing PowerShell with XML configuration and using the SharePoint Server 2013 Client Components SDK (currently v16). The PowerShell is run locally on the developer or administrator’s machine but connects to SharePoint Online using the Client Object Model. Through this script we can deploy most things required for SharePoint Online customization such as:

  • Master Pages
  • Page Layouts
  • Content Types
  • Display Templates
  • Term Store Terms

It has taken some investment in the development of PowerShell modules but these become highly reusable across projects.

As developers work with their own tenant they develop the deployment scripts required for their feature. Those familiar with SCRUM will relate to ‘Done Criteria’. Our Done Criteria includes development of a feature and its scripted deployment to the Development (Integration) tenant where it can be reviewed. There are some exceptions which cannot be achieved by this technique but the Client Object Model does support a very wide range of common needs for deployment and configuration. Where exceptions exist these are documented in a deployment document for manual execution by an administrator.

Replication of Production Data

It is desirable to have recent data available in QA to ensure good and valid testing. For this replication it is advisable to use a third-party migration tool like Metalogix Content Matrix. When selecting a tool for this purpose ensure that it can migrate the data faithfully to ensure good testing but also that it can transform data as required. For example, if Production data uses synchronized identities but QA uses Cloud Accounts it will be necessary to perform some transformation. E.g.

chris.hines@contoso.com could be mapped to chris.hines@contosoqa.onmicrosoft.com

Happy development and deployment!

New White Paper: A Guide to On-Premises SharePoint 2013 Upgrades

A lot of what we talk about here on the Perficient Microsoft blog focuses on the cloud, and that reflects market trends, and what we are seeing with our customers. As Microsoft CEO Satya Nadella wrote earlier this month in his email to employees, and so many at Microsoft have said since, we now live in a cloud-first, mobile-first world. A Guide to On Premises SharePoint 2013 Upgrades

And there is no doubt, hosted SharePoint is a great option for many organizations (in fact, you can tune in to an on-demand webinar we had recently where one customer describes the reasons they chose SharePoint Online). So while Office 365 is an ideal fit for some, for other customers, on-premises deployments are still the way to go. There are a number of industries that mandate certain data types are kept on-premises. Or maybe you have a ton of custom applications that would need to be reworked should you move to the cloud.

Bottom line, each and every SharePoint ecosystem is different, and if you are on a previous version of SharePoint, you are probably taking a hard look at whether or not to migrate to SharePoint 2013.

If you’d like to learn more about your on-premises upgrade options, take a look at our new white paper, A Guide to On-Premises SharePoint 2013 Upgrades. Perficient’s Adetayo Adegoke and Suzanne George shared their knowledge and expertise from many, many SharePoint migrations to create this comprehensive guide describing the new features, capabilities, and your options.

To download the guide, click here.

Webinar: Ensuring a Successful SharePoint Migration to the Cloud

Last week, at Microsoft’s Worldwide Partner Conference, it was mentioned that there are one billion Microsoft Windows and Office users today, and Office 365 is Microsoft’s fastest growing business in its history. At Perficient, we are definitely seeing this. Our customers are using Office 365 more than ever, from SharePoint to Exchange and Lync to Yammer and Power BI. webinar - internet education concept

That being said, when it comes to SharePoint, if you are considering moving your on-premises SharePoint environment to the cloud, you aren’t alone. There are a plethora of reasons to make the move – with Office 365, SharePoint is easy to manage, has enhanced security, and is accessible from just about anywhere. To add to that, you have OneDrive for Business, you can extend the collaborative nature of SharePoint with Yammer, and you can find tons of SharePoint apps in the Office Store  to extend functionality.

If your company is considering such a move, and you want to learn more, join us on Thursday, August 14, at 1 p.m. CT for a webinar, Best Practices for a Successful SharePoint Migration or Upgrade to the Cloud. During the session, Jason Bell, senior solution architect and SharePoint guru at Perficient, will show you how to make the migration process less daunting, including key details needed for a successful migration to Office 365. He’ll also cover: Read the rest of this post »

Partner Spotlight – Metalogix Diagnostic Manager

Perficient has many great partners that support our development and deployment of the best of breed solutions we provide for our clients. This post is the second in a series that will highlight some of the products available from our partners. Today, I’ll be presenting Metalogix and their Diagnostic Manager for SharePoint. 91583_Metalogix_Logo2011

Metalogix Diagnostic Manager ensures SharePoint performance and availability at all times. It monitors SharePoint content and servers from a single console, quickly identifying , diagnosing, and resolving problems before users even notice. It also provides critical planning information by storing size, count, and performance data of both servers and stored objects. Diagnostic Manager also monitors SharePoint in real-time, enabling administrators to quickly pinpoint performance and availability issues with servers, resources, HTML controls, web parts, and web controls.

Key Features

  • Preventative Care, Not Just Emergency Care

Diagnostic Manager provides constant insight to your server and content performance. It continuously monitors, diagnoses, discovers, analyzes and resolves SharePoint performance and availability issues.

  • Diagnose Without Delay

Read the rest of this post »

Virtualizing SharePoint 2013 Workloads

Most new SharePoint 2013 implementations these days run on virtual machines, and the question on whether to virtualize SQL servers has been long put to rest. Indeed, with the new Windows Server 2012 R2 Hyper-V VM specs of up to 64 vCPUs, 1 TB RAM and 64 TB data, it is  hard to make a case for physical hardware.

Both Microsoft Hyper-V and VMware have published recommendations for working with virtualized SharePoint farms. The list of recommendations is long (and somewhat tedious), so this cheat-sheet aims to summarize the most important ones and provide real-world advice for SharePoint and virtualization architects.

  • When virtualizing SharePoint 2013, Microsoft recommends minimum of 4 and maximum of 8 CPU cores per VM. Start low (4) and scale up  as needed. With multiprocessor virtual machines, the physical host needs to ensure enough physical CPU cores are available before scheduling threads execution of that particular VM. Therefore, in theory the higher the number of vCPUs, the longer potential wait times for that VM. In every version starting 4.0, VMware has made improvements to the CPU scheduling algorithm to reduce the wait time for multiprocessor VMs using relaxed co-scheduling. Still, it’s wise to consult documentation on your particular version and see what are the specific limitations and recommendations.

 

  • Ensure true high availability by using affinity rules.  Your SharePoint admin should tell you which VM hosts which role, and you will need to keep VMs with same role on separate physical hosts.  For example, all VMs that host the web role should not end up on the same physical host, so your typical mid-size 2 tier farm should look something like this:

VMAffinity

  • When powering down the farm, start with the web layer, and work your way down to the database layer. When powering up, go in the opposite direction

 

  • Do not over oversubscribe or thin-provision PROD machines, do oversubscribe and thin-provision DEV and TEST workloads

 

  • NUMA (non-uniform memory access) partition boundaries: The high-level recommendation from both Microsoft and VMware is not to cross NUMA boundaries. Different chip manufacturers have different definitions of NUMA, but the majority opinion seems to be that NUMA node equals physical CPU socket, and not CPU core. For example, for a physical host with 8 quad-code CPUs and 256 GB of RAM, a NUMA partition is 32 GB. Ensure that individual SharePoint VMs will fit into a single partition i.e. will not be assigned more than 32 GB or RAM each.

 

  • Do not use dynamic memory: Certain SharePoint components like search and distributed cache use memory-cached objects extensively and are unable to dynamically resize their cache when the available memory changes. Therefore, dynamic memory mechanisms like minimum/maximum RAM, shares, ballooning driver etc. will not work well with SharePoint 2013. Again, your SharePoint admin should provide detailed design and advise which VM hosts which particular service.

 

  • Do not save VM state at shutdown or use snapshots in PROD: SharePoint is transactional application and saving VM state can lead to inconsistent topology after the VM comes back up or is reverted to a previous snapshot.

 

  • Disable time synchronization between the host and the VM: Same as previous point. All transaction events are time stamped, and latency during time synchronization can cause inconsistent topology. SharePoint VMs will use the domain synchronization mechanism to keep local clocks in sync.

 

  • Do not configure “always start machine automatically”: There may be cases where SharePoint VM is shut down for a reason, and starting it automatically after physical host reboot can cause problems.

 

  • TCP Chimney offload: Please refer to this VMware post on reasons why this setting may need to be disabled. This is not a setting unique to SharePoint and unless it is the standard practice for all web VMs or is part of the image, it should not be configured.

 

  • When configuring disaster recovery, virtualization has been a godsend for quite some time. Using VM replication to a secondary site is by far the simplest SharePoint DR scenario to configure and maintain.

 

  • Other settings that are not SharePoint-specific : things like storage host multi-pathing, storage partition alignment, physical NIC teaming, configuring shared storage for vMotion etc. hold true for all VMware implementations

 

 

How to Speed up a Slow People Picker in SharePoint

Manjeet Singh, Lead Technical Consultant at Perficient, recently wrote a blog post about issues relating to a slow People Picker in SharePoint.

Have you experienced problems with People Picker taking too long to find a user? Almost a minute or may be more. Does your SharePoint Environment functions with multiple domains?
One of the reasons for sluggish behavior of people picker is the People Picker property called “SearchActiveDirectoryDomains” which usually scopes the entire AD with its sub trees and trusted AD’s while searching for the users account.

In his post, Manjeet details the step-by-step process to fix this issue. You can read the entire blog post here.

Office 365 – SharePoint Online Admin Overview

One of the best benefits to Office 365 is the continuous updates and improvements to the platform. We no longer need a sever release, service pack, or hotfix. We get new releases when Microsoft is ready to make them live in the cloud. Recently, we’ve gotten Document Conversations and Office for iPad; and we will be seeing Office Graph and Olso some time this calendar year. Microsoft recently rolled out a new Office 365 For Business Roadmap, where you can keep an eye on upcoming service releases.

SharePoint Central Administration Featuresadmin3

Every SharePoint Administrator is used to operating in Central Admin, the Office 365 SharePoint Admin experience provides some of that same functionality -

  • Site Collections – full up management of all site collections, quotas, permissions, and recycle bin.
  • User Profiles – manage user properties, manage user profiles, setup MySites, etc.
  • BCS – manage BDC models and external content types, manage connections
  • Term Store – our ever familiar Term Store Management Tool
  • Records Management – formally known as Send To locations
  • Search – manage schema, result sources, query rules, search center settings, etc.
  • Secure Store – create new target applications
  • Apps – app catalog, purchase apps, manage licenses, etc.

In addition to these normal administration features of SharePoint, we have a number of features that only apply to the Office 365 SharePoint Online environment.

Top Navigation Bar User Experience

One of the recent additions to the service, these options provide the ability to show/hide the OneDrive for Business, Yammer/Newsfeed, and Sites links from the Office 365 Suite Bar. This is a great new feature for those customers who are not yet ready to roll out the full suite of cloud services. This is a great instance of Microsoft listening to its customers. Moving to the cloud can be complicated, and sometimes its necessary to roll features out incrementally. This new Admin feature enables that. Read the rest of this post »