Welcome to ONLC Training Centers

Designing and Developing Microsoft SharePoint Server 2010 Applications - 10232 Course Outline

 (5 days)
Version 2010

This five-day instructor-led course is intended for SharePoint Development professionals who are responsible for leading projects, designing solutions, and identifying problems. In this course, students learn the skills and best practices that are required to help organizations design and develop effective SharePoint applications.

Audience Profile
This course is intended for developers and development leads who will be responsible for designing custom code solutions that are deployed to SharePoint 2010 servers. To be successful in this course, the student will have at least two years of SharePoint development experience and should
have experience with ASP.NET and Visual Studio 2010.

At Course Completion
After completing this course, students will be able to:
Develop strategies for caching, session state, as well as design for high performance sites by limiting page size and iteration.
Determine the most suitable presentation method, visual elements, programmatic objects and multilingual strategy which meets the design objectives.
Evaluate available data access and storage methods and determine the appropriate implementation for the application requirements.
Identify the pros and cons of various data capture options and specify the most effective method or combination of methods for capturing user input.
Evaluate the use and implementation of SharePoint artifacts and determine which artifacts best meet the needs of the application requirements.
Design processing systems to get work done in the solution.
Create an effective strategy for implementation and deployment of custom solutions in both development and production environments.
Create a development strategy to allow multiple developers and administrators to work together.
Devise a strategy for developing and deploying upgrades over time as the solution evolves.
Develop an information architecture strategy that will support flexibility and growth and a navigation strategy that fits on top of this information architecture.
Plan a comprehensive branding strategy and determine the necessary application elements required to support that strategy.
Design and implement a security approach which supports both code access and end-user functionality.
Design an effective strategy for optimizing page render times and data access methods within SharePoint 2010.
Determine the appropriate use of unit and integration tests within SharePoint and design an effective strategy for insuring maximum code reliability.

This course requires students to meet the following prerequisites:
Understanding of the problem-solving techniques that apply to the Software Development Lifecycle (SDLC), including the versioning of software and the management of configuration and content in a software system
Basic knowledge of Web application architecture
Experience in developing in a team environment
Working knowledge of ASP.NET and Visual Studio
Experience in SharePoint infrastructure including servers and services
Experience in SharePoint development including the APIs and XML schemas necessary to create web parts, perform data access, and provision fields, lists, content types, etc.

Course Outline

Module 1: Advanced ASP.NET Concepts for SharePoint
This module helps you to review the essential information regarding ASP.NET including how to improve performance for high-scale sites like SharePoint. This module covers concepts around view state, caching, and session state and provides an opportunity to learn to make appropriate choices.

Server Memory
Server CPU
Transfer and Client

Lab : Page Size and View State
Using Fiddler to Observe Page Loading
Using Fiddler to Examine Page Size
Reducing Page Size

Lab : Memory and Performance
Capturing a Memory Profile
Reviewing the Report
Resolving Memory Issues and Retest

Module 2: Designing for User Experience
This module provides the key criteria and structure necessary to make appropriate decisions about what kind of user interface component to use based on the needs of the solution.

SharePoint Background
Page Parts
Globalization and Localization
Designing for Accessibility

Lab : Selecting Page Parts
Plant Summary Page
Plant Configuration Page
Employee List
Line Status

Lab : Selecting Page Types
Line Dashboard
Manager’s Dashboard
Alert Notification

Module 3: Designing for Data
This module explains defining what storage will look like. This module discusses the information about data design critical to the performance and accessibility of the solution. The module also covers scalability issues related to data as well as the structural components such as the use of lists, list definitions, content types, and fields.

List and Library Fundamentals
Large Data Strategies
SharePoint Data Management

Lab : Time Tracking
Creating List Views
Indexing Key Columns

Lab : Invoice Management
Establishing an Invoice Content Type
Creating a Solution for Storing Invoices
Testing the Solution for Storing Invoices

Module 4: Designing Data Capture and Integration
This module discusses strategies on how to get the data into the system. This module covers the techniques for capturing data – including office integration and integrating to other systems with BCS.

Designing for Data Capture
Designing for Integration

Lab : Creating External Lists
Connecting to the Data Source
Defining the External Content Types
Defining the External Lists
Setting Security for the Content Types
Defining an Association

Lab : Creating an InfoPath Form
Deciding the kind of form to create
Creating the Header fields
Creating the Lines
Publishing the Form to a SharePoint Library

Module 5: Designing Artefacts
This module discusses items that will need to be implemented in SharePoint to tie the user interface and the data structure together. The module covers information about artifacts to begin the transformation of the abstract design into a specific set of deliverables that need to be created through SharePoint.

Customer Requirements
Creating Sites

Lab : Incident Response Site
Evaluating the Requirements
Designing the Solution

Lab : Expense Reports
Evaluating the Requirements
Designing the Solution

Module 6: Designing Processing Solutions
This module covers the details of options for developing solutions. The module provides decision criteria for the determination of sandbox versus full trust (or a hybrid of the two) deployments. The module also provides details for making decisions about processing including how to address long running operations and how to decide the appropriate processing solutions.

Multi-Server Configurations
In and Out of the Sandbox
Getting Work Done
Working with Workflows

Lab : Engineering System
Evaluating Client Capabilities and Requirements
Evaluating Sandbox Capabilities and Requirements
Evaluating Farm Deployment Capabilities and Requirements

Lab : Sensor Report
Designing Data Access for Sensor Data
Designing a Processing Solution for the Report
Designing a Processing Solution for Approval

Module 7: Designing Packaging
This module addresses the first order problem of factoring the solution into features and packages so that it can be upgraded. This module covers the baseline skills of determining the number, scope, and dependency of features and determining the right number of packages.

Understanding the Packaging Lifecycle
Establish Design Principles

Lab : Building a Business Document Solution
Designing a Solution
Create the Final Solution

Lab : Working with Dependencies
Creating a Common Assembly
Creating a dependent Solution

Module 8: Designing a Development Strategy
This module focuses on two key items necessary to deploy larger solutions, configuration and logging. This module provides the students a platform to expand the scope of the solution and focus on issues related to dozens of projects on a server, each with its own approach to configuration and logging.

Developing for the Enterprise
The Role of Logging
Application Flexibility and Configuration

Lab : Team-based Logging and Configuration
List based configuration appraisal
SharePoint List based configuration
SharePoint List based logging
Configure logging level

Lab : Operational Logging
Add Logging to SharePoint ULS

Module 9: Developing Versioning and Deployment
This module delves into the challenges of versioning in a SharePoint environment. The module also addresses deployment issues because most deployment issues are related to the versioning process.

Application Lifecycle
Versioning Strategy

Lab : Versioning Assemblies
Defining Base Version
Upgrading the Assembly

Lab : Feature Upgrade
Creating Upgrade Manage Page
Adding Feature to Upgrade
Upgrade Feature

Module 10: Designing Information Architecture and Navigation
This module helps to draw the distinction between information architecture and branding topics. The module helps to separate taxonomy (organization) from navigation (user interface).

Designing an Information Architecture
Planning for Software Boundaries
Designing Content Navigation

Lab : Categorizing Information
Card Sort
Design Content Types and Site Columns

Lab : Implementing Farm Level Navigation
Deploying a custom SiteMap
Adding an ASP Menu to the Master Page

Module 11: Designing Branding and Customization
This module covers branding options, including what tools can be used to customize the appearance. The module moves us to including the users and power users of the ultimate solution.

Introduction to Branding
Master Pages
Cascading Style Sheets
Tools Overview
Implementing SharePoint Branding

Lab : Deploying Custom Branding
Deploying a Custom Site Column and Content Type
Using custom CSS
Deploying a custom master page

Lab : Deploying a Custom Content Type
Deploying a Custom Site Column and Content Type

Module 12: Designing Security
This module describes how to design security for performance and provide a holistic view so to evaluate security implications and tradeoffs. This module also outlines the new Claims based authentication in SharePoint 2010 and how Forms Based Authentication fits into this model.

Security within SharePoint
Using an Alternate Identity Store
Forms-Based Authentication
Deeper look at SharePoint Claims

Lab : Setting Up a Customer Service Site
Setting Up the Authentication Provider
Creating an FBA-Claims Site
Optional Exercise: Viewing Claims for an FBA User

Lab : Solving a Security Issue
Understanding the Scope and Relating it to Configuration
Designing a Security Strategy

Module 13: Designing for Page and Data Access Performance
This module discusses page and data access performance and how to plan for a high performance site.

Optimizing SharePoint Page Performance
Analyzing Performance with the SharePoint Developer Dashboard
Optimizing SharePoint Data Access Performance

Lab : Using Developer Dashboard
Using the SharePoint Server 2010 Developer Dashboard to Capture Performance Metrics
Leveraging the SharePoint Server 2010 Search API for Large Data Queries

Module 14: Designing Testing Strategy
This module discusses what we do at the end of the development process, testing. The module also covers functional testing and scale/performance testing.

Testing Concepts
Unit, Integration, Regression Testing
Performance Testing

Lab : Designing a Testing Strategy
Unit Testing
Performance Testing
Load Testing
View outline in Word


Attend hands-on, instructor-led Designing and Developing Microsoft SharePoint Server 2010 Applications - 10232 training classes at ONLC's more than 300 locations. Not near one of our locations? Attend these same live classes from your home/office PC via our Remote Classroom Instruction (RCI) technology.

For additional training options, check out our list of SharePoint 2010 Courses and select the one that's right for you.

Microsoft Gold Partner
Need a price quote?

Follow the link to our self-service price quote form to generate an email with a price quote.

Email Alert

Receive an email when this class is available as "Ready to Run" or "Early Notice" status.

Attend from your office or home

If you have high-speed internet and two computers you can likely take this class from your office or home.

Need a class for a group?

We can deliver this class for a private group at your location. Follow the link to request more information.

Attend computer classes from ONLC Training Centers Request a copy via mail


Class Format
Class Policies
Student Reviews

Bookmark and Share

First Name

Last Name