Welcome to MSDN Blogs Sign in | Join | Help

How we did it: SendTec.com - design, development, and go-live in just 6 weeks!

I've received several inquiries about the SendTec website that was mentioned in a recent blog entry, so I'm very pleased to post the following "how we did it" guest blog entry written by Ted Vreeland (Application Architect) and Dave Redman (Managing Sr. Software Engineer), who were the Technical Leads for the project.

<Lawrence />


SendTec, Inc. is a multi-channel marketing company deploying traditional agency resources as well as innovative technology solutions for the benefit of ROI-minded advertisers. As part of an overall corporate rebranding effort, SendTec wanted to redesign the look and feel of their corporate website. The overall goals for the new site were:

  • To have a clean, modern look and feel.
  • To maintain existing search engine rankings.
  • To be easily managed by non-IT personnel.
  • To be completed quickly to meet the aggressive brand launch schedule.

The SendTec Business Technology Team had very limited experience with SharePoint technologies. A key decision needed to be made whether to build the new site with ASP.NET (which had been used to build the existing site) or with MOSS 2007. Two members of the Business Technology team quickly ramped up on MOSS 2007 with an emphasis on the Web Content Management (WCM) capabilities, customizing MOSS sites, developing custom web parts, and content deployment. The decision was made to move forward with building the new site with MOSS 2007, but there were some design features in the new site that would prove to be significant challenges for the Business Technology team.

Design. The design of the new site was done by SendTec’s in-house creative team. To achieve the look and feel as laid out by the designers, the project team needed to create a new master page; custom content types; several new page templates; and define many new custom CSS styles.

Navigation. The new site included three-tiered navigation. At first glance, it appeared that MOSS only supported two tiers. After some digging under the covers, it was discovered that MOSS did provide the underlying functionality to support more than two-tiered navigation by using a custom administrative tool to manage the additional level. In addition, the design called for the top menu bars to appear on the left-hand side of the pages. This was achieved by creating a custom menu control that inherited from the standard ASP.NET 2.0 menu control along with the use of the CSS Control Adapter Toolkit for ASP.NET 2.0.

Search Engine Rankings & SEO. The new site had to maintain its existing search engine rankings and needed to provide SEO support by way of keywords and description “meta” tags. To support the first part of this challenge, the Business Technology team created a custom ASP.NET module to handle stripping out the “/pages” portion of the in-bound URL as well as removing it from the HTML being returned to the browser. In addition, a redirect handler was employed to ensure that pages that no longer existed in the old site were routed to the appropriate page in the new site. To support the SEO requirement, the default Page content type within MOSS was extended with custom column types that allow copywriters to modify the keywords and description of a page themselves. The site’s Master Page was modified to include these values in the header section of the output HTML.

Content Management. Several areas of the new site were to be managed by copywriters, designers, and content managers. To achieve this, the WCM features within MOSS were enabled within an intranet version of the site. In addition, several lists were created to allow content managers the ability to quickly add new press releases, articles, white papers, and job postings. To support design requirements, custom web parts were created to query the lists and format the output. Incremental content deployment jobs are used to periodically push new and updated content to the Internet-facing MOSS farm.

Performance. MOSS 2007 provided performance well beyond our expectations right out of the box. Server load and response times were significantly better than our old site. However, we felt that we could improve site performance even more, so we implemented the built-in caching capabilities of MOSS that are well documented here. The first part of the implementation was using the BLOB caching. This reduced the amount of database overhead since there was no need to retrieve content from the database each time an image, document, or any other infrequently changing item was requested. The second part of the implementation was the use of profile output caching. Since our site is primarily visited by anonymous users, we decided to enable the “Public Internet (Purely Anonymous)” cache profile with no changes to the default settings. The implementation of BLOB caching and cache profiles immediately cut our response times in half. Our final step to improve performance was to reduce our page size. The biggest reduction of page size was to eliminate the need to have the 257KB core.js in our pages for anonymous users. So we implemented a simple custom control to remove the core.js script from the HTML output for non-authenticated users.

The SendTec.com website was launched on April 24, 2007. Shortly after going live, the project team made some modifications to the HTTP modules to improve security. The content managers and designers have been utilizing the WCM features of MOSS, and they really like being able to make site changes without the need to involve the Business Technology Team. The SendTec management team is very pleased with the decision to implement the new site using MOSS 2007, and in fact, is planning on utilizing MOSS for future client websites. This would give clients the best of both worlds – having SendTec provide the creative and technical expertise to design, build, and host their site, but still give clients the ability to add or modify content as they wish.

Ted Vreeland
Application Architect, MCD
tvreeland@sendtec.com

Dave Redman
Managing Sr. Software Engineer, MCAD
dredman@sendtec.com

Published Friday, May 18, 2007 10:55 AM by sptblog

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Comments

# re: How we did it: SendTec.com - design, development, and go-live in just 6 weeks!

Wow, Great work in a short time.

Saturday, May 19, 2007 5:49 PM by mahdispecial

# re: How we did it: SendTec.com - design, development, and go-live in just 6 weeks!

An excellent achievement.

What was the size of the dev team? the guys who developed the custom web parts, and other ad-hoc development, etc.

Abdul.

Monday, May 21, 2007 12:07 AM by Abdul

# re: How we did it: SendTec.com - design, development, and go-live in just 6 weeks!

Hi,

I'd love to see that control you made for the core.js. Could you email it to troels(a)proactive.dk.NOSPAM

Monday, May 21, 2007 3:30 AM by Troels

# re: How we did it: SendTec.com - design, development, and go-live in just 6 weeks!

Hello,

Thanks for the post, as it broadens the idea of implementing MOSS. Can you share why you guys selected MOSS as platform for this project?

Thanks,

Monday, May 21, 2007 9:57 AM by Ravi

# re: How we did it: SendTec.com - design, development, and go-live in just 6 weeks!

It would be awesome to see an article on Search Engine Optimization was implemented... other than that, great work in such a short time

Monday, May 21, 2007 11:52 AM by Kanwal

# re: How we did it: SendTec.com - design, development, and go-live in just 6 weeks!

Could you send me the core.js file as well?  I am leading the migration of a large product website as we speak!  We could really use this performance boost.  Please send email me at wpalmer@psclistens.com.NOSPAM

thx!

Monday, May 21, 2007 9:25 PM by Wes

# re: How we did it: SendTec.com - design, development, and go-live in just 6 weeks!

Monday, May 21, 2007 10:09 PM by LLiu

# re: How we did it: SendTec.com - design, development, and go-live in just 6 weeks!

Hi Ravi,

We really struggled with whether to use SharePoint or not.  Our other option was to build the site as an ASP.NET web application. We had lots of experiencing in building web application that way so it might have been quicker to do it that way - however, we knew that if we did, we (meaning the IT department) would end up being the ones making content updates all the time.  So it came down to the CIO deciding that it would be more cost effective to find a way to pay for a single MOSS internet license and build the site out using SharePoint.  That way, the marketing folks can make content changes without a need for anyone in IT to assist them.  There was a learning curve, and we had to do a lot of digging under the covers of MOSS, but it was worth it in the end.

Hope that helps,

Ted Vreeland

Tuesday, May 22, 2007 9:57 AM by tvreeland

# re: How we did it: SendTec.com - design, development, and go-live in just 6 weeks!

Hi Wes & Troels,

As for removing the Core.js to improve performance - we didn't modify the js file at all.  We replaced the core.js include statement in our master page with a tag to include a custom user control we created.  Within the OnIniti event of the custom user control we just check to see if the Request.IsAuthenticated property is true and if so call the ScriptLink.RegisterCore function.  That's all there was too it.

Hope that helps,

Ted Vreeland

SendTec, Inc.

Tuesday, May 22, 2007 10:07 AM by tvreeland

# re: How we did it: SendTec.com - design, development, and go-live in just 6 weeks!

It would be greatly appreciated, if you could  post an architecture diagram/explanation of your server farms (including intranet)?  It is my understanding that you must have a separate farm (and license) for intranet and internet?

Thanks,

MB

Tuesday, May 22, 2007 12:05 PM by Mike Brooks

# re: How we did it: SendTec.com - design, development, and go-live in just 6 weeks!

Hi Mike,

Regarding our architecture\infrastructure diagram - it's actually pretty simple at the moment.  We have a staging\working MOSS environment in our intranet - this is where we do assembly testing of our custom web parts and pages. It also has the WCM functionality enabled (so content producers can do their thing).  We have a single (4cpu) server acting as the web server and another 4cpu database server.  On the internet side it's pretty much the same thing except the database is made up of two servers clustered together.  We have an hourly schedule deployment job to push out published content from the intranet MOSS environment out to the internet environment.

We do have more web servers in our internet web server farm, however, we only purchased a single MOSS internet license so we have our networking configured to direct all sendtec.com traffic to that single server (all other client traffic is loadbalanced and routed accordingly).  We will be getting additional MOSS internet licenses in the future (as more MOSS clients come on board ;-).

Ted Vreeland

SendTec, Inc.

Tuesday, May 22, 2007 4:23 PM by tvreeland

# re: How we did it: SendTec.com - design, development, and go-live in just 6 weeks!

Hi guys, Great work...

Am working on very complex Moss portal, with 4-5(maybe 6) tier navigation structure.

You said: "it was discovered that MOSS did provide the underlying functionality to support more than two-tiered navigation by using a custom administrative tool to manage the additional level".

Can you bee more specific about that.

Thanks in advance,

Nenad Banovic

Lanaco C&C

Wednesday, May 23, 2007 5:23 AM by nenad.banovic

# SharePoint Kaffeetasse 10

Chris O'Brien stellt die Frage: SharePoint deployment options:Features or Content Deployment? Buchtipps

Wednesday, May 23, 2007 6:41 AM by SharePoint, SharePoint and stuff

# re: How we did it: SendTec.com - design, development, and go-live in just 6 weeks!

Nenad,

Take a look at the SPNavigationNode and SPNavigationNodeCollection.  Using the SP object model, SharePoint does not appear to limit you to the number of nested node levels.  So, we leveraged this to allow us to go as deep as we needed to go.  We just had to create our own menu editor for managing this.

David Redman

SendTec, Inc.

Wednesday, May 23, 2007 9:17 PM by David Redman

# SharePoint cool stuff of the week!

SharePoint and Popfly integration -- yes, really! How we did it: SendTec.com - design, development, and

Friday, May 25, 2007 1:54 PM by Roberdan

# SPPD073 SharePointPodcast

Direkter Download: SPPD-073-2007-06-01 [00:00] Intro OT1: PopFly + SharePoint and Popfly integration

Friday, June 01, 2007 4:00 PM by SharePointPodcast.de

# SPPD073 SharePointPodcast

Direkter Download: SPPD-073-2007-06-01 [00:00] Intro OT1: PopFly + SharePoint and Popfly integration

Friday, June 01, 2007 4:02 PM by SharePoint, SharePoint and stuff

# re: How we did it: SendTec.com - design, development, and go-live in just 6 weeks!

Impressive time to production. How big was your team? Elapsed time is not the same as man hours, so it would be good to get a feel for the effort.

Tuesday, June 26, 2007 6:01 PM by Andrew Goldie

# re: How we did it: SendTec.com - design, development, and go-live in just 6 weeks!

I would be really interesetd is knowing how you removeing the /pages segment from your in bound urls and generated HTML.

Thanks

Rich

Wednesday, September 12, 2007 6:21 AM by RichH

# re: How we did it: SendTec.com - design, development, and go-live in just 6 weeks!

Hi Andrew - our team was comprised of one guy from creative, who was responsible for the overall look and feel (design, flash, graphics, etc).  Everything else was done by just Dave and myself.  Actual development time was probably only four of those six weeks.  We did do a couple small enhancements after we went live though (redirect, performance, and security functionality primarily).

Monday, October 15, 2007 2:45 PM by tvreeland

# re: How we did it: SendTec.com - design, development, and go-live in just 6 weeks!

Hi Rich,  I'm really surprised this doesn't come up more often and even more surprised that Microsoft has released a fix for this.  But to answer your question, we created a couple custom HttpModules that have some wicked regular expressions in them (among other things).  ;-)

Monday, October 15, 2007 2:54 PM by tvreeland

# re: How we did it: SendTec.com - design, development, and go-live in just 6 weeks!

Hi Rich - typo in my previous post.  To my knowledge Microsoft has not posted a fix for stripping out the '/pages' string from the inbound url or resulting html.

Ted

Monday, October 15, 2007 2:57 PM by tvreeland

# re: How we did it: SendTec.com - design, development, and go-live in just 6 weeks!

I am currently managing a project in which we are customizing a public-facing SharePoint site, just as you have done.

We are running into an issue with the CSS Friendly Control Adapters. I was wondering if you ran into the same issue, and more importantly, if you have a solution.

I noticed that when the adapters are installed on the server, we can no longer navigate to the Advanced Permissions page under Site Action > Site Settings > Modify All Site Settings.  An error page is returned with the message "Unknown Error."

Any ideas?

Wednesday, January 09, 2008 9:04 AM by Craig Condon

# SPPD073 SharePointPodcast

Direkter Download: SPPD-073-2007-06-01 [00:00] Intro OT1: PopFly + SharePoint and Popfly integration

Tuesday, June 09, 2009 7:05 AM by SharePointPodcast

Leave a Comment

(required) 
required 
(required) 
 
Page view tracker