Microsoft

Subscribe via Email

Subscribe to RSS feed

Archives

Follow us on Twitter

Archive for the ‘SharePoint’ Category

SharePoint 2010 Permissions and RunWithElevatedPrivileges Context

by on May 14th, 2012

These days, many people are using SharePoint anonymously or creating mash-ups of data from various SharePoint sources.  As a result, these various resources have differing permissions governing their visibility.  For example, the Managed Metadata Term Store cannot be accessed anonymously. 

Indeed, the most likely occurrence, and where I discovered this problem, is when you want to display all items in a list even if the current user doesn’t have permissions to edit or view the item.  My specific situation was for an editor that needs to know a particular topic exists but doesn’t have the permission to see or edit the topic.

Displaying content from a secure source on a site must be done after the user has logged in or (more likely) via SPSecurity.RunWithElevatedPrivileges.  This was the only solution in my case.

Once inside the RunWithElevatedPrivileges security delegate, it’s well known that you must recreate any object that you need to access with full permissions.  This is because previously created objects maintain their security context once inside the security delegate.  So an SPSite created outside of the delegate will have the same permissions as it does inside the delegate.  Although not necessarily straightforward, it’s intuitive that permissions would not get remapped within the delegate.

Slightly less intuitive, and poorly documented, is the fact that the security context for objects created within the security delegate is maintained once you leave the delegate.  So if you get a reference to an SPListItem within the security delegate and pass it outside of the delegate, you will still have full control on the item because it was referenced from within the security delegate!

This behavior can lead to some interesting ramifications.  In my case, the use of the DoesUserHavePermissions method on the SPListItem class was acting strangely.  Calling this method on the item I got out of a security delegate always returned true because the security context followed the object.  To avoid this unfortunate situation, I had to get a reference to the item outside of the security delegate to get the correct permissions for the object.

In general, treat SPSecurity.RunWithElevatedPrivileges as a separate context entirely and don’t reuse objects across the context boundary for items with permissions.

Take Your SharePoint With You: NewsGator Social Sites on the iPad

by on May 14th, 2012

So you’re using NewsGator Social Sites on your SharePoint intranet and you want to stay connected when you’re on the go?  Check out my new video blog on using the iPad app for NewsGator Social Sites.  As NewsGator’s inaugural Partner of the Year (2011), we just might know a little something about this.

Oh, and if you’re not using Social Sites to make SharePoint more social, you probably should be.  There’s a lot of knowledge out there to be managed that winds up slipping through your fingers if you don’t bring those conversations online and take advantage of crowdsourcing!

That link again in cut-and-paste format: http://www.youtube.com/watch?v=mtzumRCYsEU&feature=digest_mon

Enjoy!

Why Your SharePoint Portal Includes a Lunch Menu

by on May 2nd, 2012

I’ve lately been reading some thought-provoking posts by Stephen Fishman over at CMSwire.  I think he makes some very astute observations from the UX point of view, and I’d suggest looking into them if you follow this topic.  (In fact, a number of his points are exactly the sort of “pure UX” analysis I’ve been working to rationalize with design on the SharePoint platform in my previous posts.)  I’ve said before that SharePoint information architecture alone doesn’t make for a good UX.  Mr. Fishman gets this.

In his latest post, he studies the need for organizations to balance quantitative and qualitative approaches, and cites the swinging of the pendulum back-and-forth between these worldviews vis-a-vis trends in the tech space.

This is something that has particular value to consider from our SharePoint-specific corner of the universe.  Many of the projects I get engaged with (whether through the envisioning, or the actual solution design and implementation) start out with a qualitative driver.  Companies want to make certain work functions easier and more enjoyable for their employees, with the understanding that this will lead to efficiencies.  If not up front, however, then down the road this vision is usually trumped by the qualitative– aligning with business processes to somehow prove return on investment (ROI) in hard dollars.

As we all know, proving ROI for collaboration tools has always been tricky.  It’s only become tougher with the trend towards social computing in the workplace.  I really don’t think you can do it, successfully, but these projects still get funded.  Why?

They get funded because at some level, the stakeholders understand the qualitative value of this stuff.  The problem we run into is when that argument gets outweighed by quantitative factors.  There’s always someone looking at the bottom line and wondering whether this solution is worth the cost.

This is where a company like ours comes in; I see it as the duty of the third-party consultant to push for the qualitative, because sometimes clients are myopically focused on the quantitative.  As Mr. Fishman says, “user happiness” is what drives engagement.  Giving users solutions that work for them will bring them in and get them going with other, related tools.

In a SharePoint world, that means lunch menus, social communities for the flag football team, community events and user spotlights.  Users who come in to engage with these are more likely to stay and fill out the form, review the document, or kick off the workflow that gives that quantifiable business value.

It really comes down to balancing the happiness factor (which drives engagement) with and against the business value (which drives budget). In my experience, projects and systems that lean too far towards one or the other inevitably fail to some degree.  Use the qualitative to drive for the quantitative.  Do your user research (as much of it as you can get in the budget!) and know your audiences.  Understand and document how they work, how they think, how they’d like to work, and what motivates them.

Then, when you have to make a case to the man in the suit with the checkbook, present it in a language he’ll appreciate.  A quantitative language.  Hit him with the facts and figures.  Let him know what his users want, and build them THAT solution, not a shoestring-budget naked SharePoint site with a nice taxonomy.

SharePoint Internet, Intranet, Extranets at Gateway to Innovation

by on April 27th, 2012

Yesterday, at the Gateway to Innovation conference in Saint Louis, MO, two of our clients presented to an audience on how SharePoint specifically helped their organizations 1) grow and scale, and 2) collaborate and integrate data and processes.

Aaron Schmeerbauch of Cassidy Turley speaks at Gateway to Innovation 2012

Andrew Richards, Director of the Information Systems Division of Biology and Biomedical Sciences at Washington University presented a new external website developed on Microsoft SharePoint 2010 with the help of Perficient. Aaron Schmeerbauch, a project manager at Cassidy Turley, presented a SharePoint implementation designed to assist with internal collaboration as the firm grew. Here are the key points and highlights from their presentations, along with screenshots of the work performed with Perficient’s assistance and strategic guidance.

A New website for Washington University Division of Biology and Biomedical Sciences

Richards began by addressing the needs he had identified with the old site. “We needed to connect worldwide with a good user experience for applicants.” The challenge: Applicants and alumni are scattered across the world.

Key Drivers/Challenges:

  • Site design and impression
  • Content organization and navigation
  • Site performance and site maintenance
  • University wide migration from Lotus Notes
  • Social media
  • Needed a Mobile-friendly piece

Additional Challenges:

  • Until the redesign, the website had primarily focused on the applicants but not other users. This new site also needed to properly serve content up easily to faculty, students and alumni for their needs as well.
  • Users complained about difficulty finding content, so a user experience review was imperative.
  • Quick links on left hand side were limited in number so they had to be generic in description. If someone came on the site looking for something specific, the couldn’t find it.
  • Not a good system for content management for the staff. Would have needed to go back to the provider to get the site expanded.

Perficient Came in to Engage:

  • UX practice at Perficient was leveraged to study the site and weigh in on the proposed redesign.
  • The team produced three different site layouts for the department to review and choose from.
  • Perficient wanted to put Wash U in a better light by focusing on the high quality of education at lower cost

The new site for Washington Univeristy's Division of Biology: http://dbbs.wustl.edu

What Perficient Did:

  • Refined user interface and information architecture
  • Enhanced CMS with SharePoint 2010
  • Expanded integration options with existing systems
  • Integrated single identity for authentication across Wash U
  • Provided out of the box mobile access

For SharePoint’s Sake, Don’t Delete that AD User

by on April 25th, 2012

Recently I was working with a client that publishes content from a secure SharePoint site to a public SharePoint site.  This publishing involves the use of the SPListItem.Copy command to copy a ListItem from the secure site to the public site.  The public and secure sites both have the same content types, but use different page layouts to display the same data.  Therefore, the Copy function makes the most sense and requires the least amount of effort.

However, since SharePoint is built on a database, SPListItem.Copy can’t just do a copy like a file system can.  Instead, it must read and write the requisite data from/to the database.  As a result, validation takes place on the data that’s being written.  Specifically, user validation occurs again.  Normally, this isn’t a problem because users don’t change that often.

In the case of this client, though, one of their content editors had left her position and her Active Directory account was deleted.  As a result, the copy operation was failing because the user could not be found.  Fortunately, the simple fix was to recreate the user account in a disabled state.  That way SharePoint could find the user in AD and complete the copy operation, but the user could no longer log in.

The moral of the story is that SharePoint is sensitive to user accounts because it relies on AD (or some other identity management system) for validation.  Therefore, your best option is to disable a user account or change permissions instead of removing a user entirely.

SharePoint and User Experience, Part II (Continued)

by on April 20th, 2012

Part 2 of Part II: UX through SharePoint-colored glasses

(Recommended reading: Start with the first part of this rather lengthy post. You’ll be glad you did.  You wouldn’t haved wanted to start Games of Thrones with Season 2, now would you?  Well, maybe if you were a big Ned Stark fan, I’d get that, but… oh, right.)

Believe it or not, SharePoint is designed to be as user-friendly as possible.  According to legend (as well as my own experience browsing their employee directory), Microsoft has a significant investment in user experience designers hard at work on their software products.  If you doubt me, check out a Windows Phone—it’s a better UX than any Android phone I’ve seen, and arguably better than Apple’s.  (Why?  We’ll discuss that in a future post.)

That said, Microsoft is designing products that are meant to be versatile and adaptable.  SharePoint needs to work as well for the hometown insurance agency down the street as it does for multinational conglomerates.  Essentially, Microsoft accomplishes this by shipping SharePoint in what we can truthfully consider a template format.

It’s there from the moment you finish the install wizard—it’s got all of the functionality and features you need—but it’s blank, and just waiting to be filled in with your own specific information/branding/thinking/working.

The true SharePoint professional acknowledges this—admitting the UX limitations of “out of the box” or “naked” SharePoint—and accepts that any solution will need some configuration and development time to truly meet the needs of the audience (or more often, varied audiences).  At the same time, there are notable features native to SharePoint that truly enhance the experience of any user.  I’m personally partial to these three:

  • The Ribbon interface.  Love it or hate it (and most people who hate it were just too used to Office XP), it provides a consistent UX for users of Office, which is even more widespread than SharePoint.  In its most basic form, if you can edit a Word doc, you can edit a SharePoint site.
  • Integration with Lync Server. Wouldn’t it improve the user experience, you say, to see someone’s name attached to a document or article on your screen and, needing an answer or having a comment, you just call their phone up from your laptop?  Well, you can do that from SharePoint.  OOB, baby.
  • SharePoint Search 2010.  SharePoint 2010 intranets provide specific, on-point search results that can be refined and filtered for even more flexibility.  I have better luck on a SharePoint intranet than I ever had doing internet searches with Google.com.  (Full disclosure: I use Bing now.)

As I said, these are just three of my own favorites, but there are others.  SharePoint has a lot of great tools that can be leveraged in building a solid User Experience.  You just need to (a) know they’re there, and (b) how to leverage them.

Navigating Around the Barriers

With all of that said, on both sides of the coin, still the biggest impediment to SharePoint usability is SharePoint itself.  This platform, as much as I love it, just does too many things and offers too many options for potential users to digest at once.  Apple may not have invented the concept of simplicity, but they’ve surely hammered home its importance as a fundamental principle of making technology useful and easy to understand.

When approaching SharePoint with the intent of providing a good user experience, it’s essential to accept that it will never be a simple, single-use application.  It can certainly be a collection of simple, useful apps bound together by a common framework.  That should be the goal of the User Experience Designer and the SharePoint Architect alike—creating a solution that works for everyone, easily, but provides specifically tailored services to many different personas and scenarios.

That’s a reasonable goal—as long as you understand both sides.

Tune in next week for what’s sure to become Hermione Granger’s favorite blog post, SharePoint UX: A History.

SharePoint and User Experience, Part II

by on April 20th, 2012

Both Sides of the Coin (Part 1 of 2)

Welcome back!  In my last post, I introduced the topic of user experience (UX) in SharePoint, and spent a little time explaining why it’s so important.  Today, as part of this continuing series on SharePoint User Experience (SPUX? Can I call it that?), I’m going to explore some different perspectives for approaching this topic.

I’ve never been one for blindly following crowds, myself.  Whether it was rejecting grunge-and-flannel in the 1990s (at the drop of a pin, I can still give you twenty reasons why Blur were a better band than Nirvana) or my stunning record of never having voted for a victorious Presidential candidate, I’ve always been a bit of a contrarian.  SharePoint people aren’t typically UX people, and UX people typically have little or nothing to do with SharePoint people.  This sad set of circumstances is unfortunate and worse, impractical.

I base my own approach to SharePoint User Experience on two fundamental principles:

  1. User Experience is Humongously Important. (We discussed this last time.)
  2. Two-thirds of the Earth is covered with water, and the rest is covered with SharePoint.

Translation: “Like it or not, SharePoint is everywhere, and it needs a sound UX to function well.”

With this in mind, let’s consider two similar-but-distinct ways of viewing the situation.  It’s just looking at both sides of an issue.  We can study SharePoint from the perspective of a User Experience professional—but conversely, we can also look at User Experience from a SharePoint-centric point of view.

Neither is wrong, and neither is right, but if we can do both together, we stand a much better chance of being able to move forward and actually create superior user experiences on the SharePoint platform.  Let’s start with considering SharePoint through the UX lens.

SharePoint via UXD Glasses

In the world of software design, traditional user experience professionals are platform- and technology-agnostic.  This is generally a good thing, because it gives them a mandate  to focus on what’s important in ground-up user-centered design—human behaviors, and how a system might best respond to them—as opposed to working with a set of known, prescribed features and designing interaction around them.

Unfortunately, we neither live nor design software in a perfect world.  Starting a SharePoint project with the Platonic form of an intranet is about as realistic as getting through four years of college with all of our so-called Platonic friendships (e.g., those with the opposite sex) intact.  Translation to the colloquial: It ain’t happening.

The UX designer who works with SharePoint will need to assume certain truths about the platform he or she is dealing with.  Lists will always remain a foundational element of how data is structured, for instance.  Library services (document check-in and check-out) can impede collaboration but enable firm governance.  Flying monkeys will come screeching out of nowhere when you least expect itEt cetera.

The thing that makes SharePoint so great– its versatility– is also its own worst enemy because left alone, it lends to complexity.  A solution that, like some kind of business-friendly Lego set, can be endlessly configured to meet different sets of requirements can seem like both a blessing and a curse.

It can be tempting to see some of these foibles of SharePoint as roadblocks to a functional UX.  Truthfully, some of them will be if you leave them alone and trust a naked SharePoint UI and some cursory user training to be enough for a usable solution (they’re not).  Yet by cleaving to certain principles of good user-centered design, it’s possible to turn a SharePoint solution into a very user-friendly place indeed.  A good UX professional knows this, and will be of great help when you’re building your new-fangled audience-engaging socially interactive intranet version two-dot-oh.

This post is continued with UX through SharePoint-colored glassesJust follow the link.

SharePoint and User Experience, Part I: Why UX Matters

by on April 16th, 2012

What BMW, New Balance, and a Successful SharePoint Project Have In Common

Today, I’m kicking off a series of posts around User Experience and SharePoint.  Over the course of the next few weeks, I want to cover this topic in some serious detail, because (as I’ve said before and I’ll surely say again), it’s one of the two keys to SharePoint user adoption in this decade.  It’s also a topic that I think has been underserved—certainly in the market I work in, but also in the community at large and even, to some extent, in the evolution of the SharePoint product itself.

In this post that you’re presently reading, I’m introducing the topic and laying the groundwork.  We’ll talk about what UX is, and why it’s important to successful SharePoint solutions.  In subsequent posts, we’ll cover:

  • UX and SharePoint (Part 1), or SharePoint and UX (Part 2)?  Establishing Perspectives
  • How the UX of SharePoint has Evolved Over Time
  • Definition of SharePoint-Specific UX Elements
  • Improving the SharePoint UX (and some educated guesses about where it might be going)

(more…)

Planning Communities in NewsGator Social Sites

by on April 3rd, 2012

At Perficient, most of our customers are looking for a SharePoint interface that provides functionality familiar to users who live their lives on Facebook, LinkedIn, and the like.  While a number of independent software vendors offer these packages, we work very closely with NewsGator to deliver the feature set that our clients need.

It’s not enough to say “we want our intranet to work like Facebook”, but that’s usually where organizations start, and no wonder—Facebook is intuitive, easy to use, and more or less ubiquitous these days.  Of course, businesses who say they want their own Facebook behind the firewall are a lot like people my age who say they like Radiohead—everyone wants to do it, but not many of them really know why.

Happily, a good many forward-thinking companies have already seized the opportunity to deploy a solution like NewsGator’s Social Sites to achieve their ends.  Once they’ve had some time to work with us and really build out their vision, it typically boils down to desiring some variation of these three key points.  Customers want to:

  • Create Engaging Communities
  • Find Experts
  • Capture Knowledge

I’d like to talk a bit —well, write, really— about these points today. (more…)

How I Learned to Stop Worrying About ECM, but Love UX and Social

by on April 3rd, 2012

First off, I’d like to shake the rust off of my keyboard and state that I’m extremely excited to be back in the blogosphere.  That goes for consulting in general, and working with Wisconsin clients in particular.  There’s just something about helping out friends, connections and worthy businesses in my home state that has always appealed to me, and it’s nice to be back at it.

I’ve already been in touch with so many of you from over the years, and I’m honored by your excitement to work with a world-class Microsoft partner like Perficient as well as the crack team we have assembled locally.  Believe me when I say we share that enthusiasm and look forward to partnering with you.

That said, a great deal has changed in the last two years.  The last time I was blogging anything of consequence, it was early 2010 and Microsoft was poised to launch the latest versions of SharePoint and Office for general availability.  In the time that’s elapsed since then, SharePoint use has evolved dramatically.

Basic scenarios like classic intranets, collaboration platforms and document management have given way to search-based applications, complex-yet-flexible dashboards, and user-friendly social experiences that bring people together and capitalize on an organization’s internal expertise.

Perhaps the single most important thing that I learned in my time at Microsoft is this— successfully deploying SharePoint and building adoption in this decade is going to depend on two things.  What are they?

  1. A sound strategy for social behind the firewall, and…
  2. An intuitive user experience!

In my next post, we’re going to begin addressing the topic of social in SharePoint.  After that, I’ve got a whole series of posts coming down the pipeline to address the topic of user experience, so fear not, UX fans—come back next week, same bat-time, same bat-channel and we’ll make you happy too!

It’s great to be back!

–Rich