1,804 articles and 14,390 comments as of Tuesday, December 28th, 2010

Wednesday, January 7, 2009

The AAA Framework (Activities, Assignments, Artifacts) – A structured approach to successful SharePoint implementations

Overview

 This article will discuss an approach to using SharePoint to add value to an enterprise’s operations, and then cover how you can be successful using  SharePoint for optimizing your operations, using a framework called “AAA” (Activities, Assignments, Artifacts).

Why a framework is needed

To date, there have been a wide variety of approaches to rolling out SharePoint. At one end of the continuum is the “Wild West” approach, where there is little thought or planning around governance or information architecture. Typically this type of rollout is seen where resources are scare, and IT is told to “give us SharePoint”. In a matter of hours, sites can be provisioned and users can be added to the site collection, and it won’t be long before SharePoint is up and running and a harried IT manager can cross this implementation off of his or her list.

Anyone who has been in this situation knows what comes next- what is affectionately termed “Fileshare 2.0″, wherein users simply  pull all of their documents into document libraries, create lists where they previously would have used spreadsheets to track things, and create sites that are data-rich but information-poor.

At the other end of the continuum is the “Locked Down” approach. This type of approach gives little control to end users, instead relying on a DBA type model where any changes or additions need to be performed by a typically overcommitted team of Sharepoint administrators. End users get frustrated with slow turnaround times for simple requests like the creation of a new list or document library, and SharePoint usage never gains momentum.

The AAA framework allows you to find the “sweet spot” on the continuum, using an approach that provides enough structure to insure good information architecture and findability, while allowing enough flexibility so that end users will not feel tied down or restricted while using SharePoint.

Why a no code approach is critical to the AAA framework

The AAA framework is a no code approach- there are no assemblies, solutions, or code to manage. The main reason for this is simplicity, and the fundamental consideration that a customized Sharepoint site introduces a level of complexity that may not be warranted from a cost/benefit perspective. An out of the box implementation with solid information architecture, using connected web parts and customized lists  can deliver a robust framework for managing many typical business scenarios, and the AAA framework can help standardize the delivery of  your sites so that they are consistent, maintainable, and useful.

Metadata and the framework

Metadata is critical to any successful SharePoint site, and the AAA framework relies on good metadata to present information in meaningful ways, and also to connect various entities together in parent-child relationships. In fact, connections between entities are fundamental to the framework

Components of the framework

The AAA framework is built on the understanding that many business processes can be broken down into entities that can be stored in native SharePoint lists that are connected together.

Entity Sharepoint Container
Activity Custom List
Assignment Task List
Artifact Document Library

Some examples of common business scenarios and their corresponding entities:

  • Marketing  department. Marketing  project information is an activity entity, and this entity contains project specific information, such as deadlines, costs, contact information, type of media, etc. Tasks associated with the activity (the Marketing project) are stored as assignments in the task list, and are linked to the activity by a lookup column. Artifacts (mockups, prototypes, copy, graphics files) are stored in the document library, and are also linked to the activity by a lookup column. Typically the default view for the document library groups files by activity (in this case, project).
  • Training and Development. Course information is an activity entity, and things such as course name, description, instructor, date, and registration deadline are captured as part of the entity. Planning and preparation actions are stored as assignments in the task list, and are linked to the course by a lookup column. All course related documents and training materials are stored in the document library and are linked to the course by a lookup column.
  • Legal Department. Case details (client information, descriptions, dates, principals and contacts) make up the activity. Tasks associated with the case reside in the task list, and all legal documents relating  to the case are stored in the document library
  • Help Desk. Trouble ticket information (caller, date, issue description, system, symptoms) are stored in the activity entity, while tasks for techs are stored in the assignment list. Workflows can automate the task assignment process. Screenshots, knowledgebase articles, and other supporting entities are stored as artifacts in the document library.

There are many advantages to mapping your business scenarios to the AAA framework. Some of the more compelling reasons are as follows:

  • It forces you to think about metadata up front, rather than reverse engineering a poorly performing site at a later point in time. You cannot simple clone a Marketing site and hand it over to the Legal department.  You must understand how the business processes work, and how users view their world. But once the initial work is done and the framework has been applied, users have ownership and feel in control. Use of required fields will allow your information architecture to persist long after the initial engagement is complete.
  • Typically Activities and Assignments have dates associated with them, and these dates can be leveraged for calendar views of the lists with little additional effort. Individual calendars can be presented based on combinations of date and assignment information. For an example, a personalized calendar of all tasks assigned to a specific person can be displayed on a site home page.
  • The AAA framework facilitates aggregation. At the list level, assignments and artifacts can be grouped by the activity they are associated with. At the site level, an activity overview page using connected web parts can present a comprehensive view of all assignments and artifacts for a single activity.
  • The AAA framework is extensible. By using multiple content types in the Activity list, you can support a comprehensive overview of numerous activities and their related assignments and artifacts.

The screen shot below shows an overview page for teams in an employee benefits department. The Activity list is connected to the Assignments list, allowing all tasks for a specific activity to filtered and displayed. (Artifacts related to the Activities are not shown on this page). Note that the Activity list can also be filtered by content type, to enhance the drill down/drill through functionality of this approach. Both the Activities and Tasks lists contain hundreds of items, and the AAA framework allows you to drill through and serve up meaningful and actionable information, regardless of the volume of data.

AAA Framework

Using the scenarios mentioned above, you can now see how this aggregation page could just as easily contain a list of help desk tickets on the left side, along with related tasks assigned to techs on the right. The status of any ticket can be seen by selecting the ticket and then viewing the associated tasks and related artifacts.

Scalability is a frequent topic when discussing SharePoint and it should be mentioned here in reference to the AAA framework. There is a tipping point past which SharePoint will not scale to support operations using the AAA framework. For example, you should not expect a high volume, 100 person call center to rely on an out of the box SharePoint implementation for trouble tickets. The optimum scenario for using the AAA framework is the Small/Medium Business (SMB) arena. Companies or departments that cannot justify the expense of dedicated enterprise software or a development team could consider a low cost WSS implementation as a first step towards business process automation, document management, and information organization.

Getting started with the AAA framework

While it is easy to get overwhelmed when trying to fit a  business process, or multiple business processes, into a framework, the most effective approach is to break things down into the smallest possible units. Your initial goal should be to identify your core Activities and you can do this either by determining what current projects are, or by looking at Artifacts that are kept in folders- the folders can imply distinct Activities. Alternatively, you can interview users and determine what they are working on (Assignments), and use these to identify distinct Activities.

Once you have identified Activities, create an Activity list in Sharepoint that will capture the appropriate content and metadata. Even if you are only mapping one Activity, you should consider creating content types in your Activity list, as the framework will only work if all Activities reside in one list. Give your Activity content types meaningful names that reflect the real world entity (“Marketing Project”, “Legal Case”, etc). The Item title column in the Activity list will serve as a lookup column in the Assignment and Artifact lists, and will allow all of the entities to relate to each other.

You can use the default task list and document library as repositories for Assignments and Artifacts, but you will need to add lookup columns to both lists that will link the item title from the Activity list. Add other columns as needed to provide additional content and metadata. Note that it is not advisable to allow attachments to any of the lists, as this discourages users from adding documents to the document library. If a document is an attachment to a list item, the aggregation advantages of the AAA framework are diminished.

To make it easier to deploy new sites, you should create a site template, which contains the following:

  • Activity List
  • Assignment List
  • Artifacts library
  • Web part page with connected web parts

This will make it simpler to provision new sites. You will still need to customize the lists and do the appropriate discovery, but having these placeholders will save you some time.

The AAA framework, as described in this article, can deliver optimized, consistent SharePoint sites that can help organize and streamline business processes, regardless of the business context. With a moderate amount of analysis and a reusable site template, you will be on your way to a successful SharePoint implementation that will deliver value to your organization and provide satisfaction to your end users.

Author: Greg Maass
Greg is a Senior Computing Specialist at the University of Washington, Human Resources Department. He has worked with various database and web technologies over the years, and currently uses SharePoint on a daily basis to provide information management solutions and optimize business process .

 

Please Join the Discussion

8 Responses to “The AAA Framework (Activities, Assignments, Artifacts) – A structured approach to successful SharePoint implementations”
  1. georgew says:

    Bravo! Wonderfully clear and concise.

  2. Christophe says:

    Greg: for further reading, would you have some references to share on the “AAA framework”?

  3. Christophe says:

    Also, one concern I have with this approach: permission management, as all the information is gathered in a few lists.

  4. Greg says:

    As far as permissions- I think it depends on the scenario. For team based sites, it is very workable, but that does assume that there are no roles in the team that should not have the ability to see everyone else’s work. We’ve had no issues using it for a marketing team and a benefits team.However, the legal department example is just for discussion’s sake- haven’t used it there and you are right- permissions could make it trickier.

  5. Chris Chapman says:

    I’m not sure what the problem would be with “permission management” vis-a-vis gathering data into single lists. Wouldn’t security trimming address this?

    Generally speaking, I find that whenever conversations turn toward ratcheting down access, this is a “smell” that points toward either problems within the organization that SharePoint cannot solve or that the IA needs to be more thoroughly worked over.

  6. Greg says:

    You can’t security trim items in a list, and setting item level permissions is really hard to support. But Information Architecture is key- you are right. I always advocate against multiple lists with the same content types, as it makes it much harder to aggregate things using views (yes, you can use content query web parts, but they have their own challenges). You need to model the IA against the real world functioning of the business, and if there are reasons to silo certain types similar content for security reasons, there are not a lot of options.

    But my experience has been that people usually come in saying that they absolutely have to have 10 different document libraries to keep all of their stuff organized. Barring any real security issues, demoing one well architected library or list with good meta data and content types gives them everything they need.

    I’m speaking in very general terms, of course, but it really is an 80/20 type of thing, and the AAA approach can be an excellent solution for many typical business scenarios.

  7. Christophe says:

    @ Chris:
    I agree that some users can be overprotective. But the reverse is also true: users who don’t understand security, and just see permission management as a burden. The truth lies in between, and security is a normal component of a healthy analysis.

    Sure, Information Architecture is key. That’s why I see a risk in forcing an IA decision – all in one container – prior to assessing the needs.

    Side comments for Greg:
    I have the same experience: 1/ item level permission management is hard to support 2/ users tend to create 10 libraries where just one is needed.

  8. tyler says:

    AAA in action?

    Does anyone have a site template that I can check out?


Notify me of comments to this article:


Speak and you will be heard.

We check comments hourly.
If you want a pic to show with your comment, go get a gravatar!