The 'One Click Rollout' versus 'Clicking It Together' deployment method#

'One click rollout'

Lately we've put a lot of effort on how to deploy custom SharePoint implementations, especially when it comes to development, testing, acceptance and production environments. Working with the SharePoint solution framework is great; it has become a 'piece of cake' to synchronize the environments with the applications and features that we've build. We've also gone a step further: taking advantage of the site definition and provisioning mechanism of SharePoint 2007. On the last few projects, we simple select the template in from the site template gallery when creating a site collection, and the whole solution rolls out, including, site structure, lists, web parts, user profiles, authentication settings, web.config settings and all the parts that come with it. Let's call it the 'one click rollout' method.

So basically the 'one click rollout' method has the potential for using it as a 'daily built' mechanism for not only code but also configuration. And we are also very happy to see that the quality and stability of the implementations increase a lot. To summarize, for development implementations, we think this is the way to go, and the time extra spend on configuring this is not a lot compared with the other method: the 'clicking it together' method.

 

'Clicking it together'

The 'clicking it together' method is basically the way we did implementations in SharePoint 2003. Create a portal, and somehow synchronize the environments by clicking the structure and lists in the SharePoint interface. In some occasions, restoring the content database will also work, but this is far from ideal. Renamed list columns, for example, is one of the problems you run into when using internal names in code. Also user rights and deployment in different domains can be very tricky. On the other hand, 'clicking it together' will result in something a customer can see very quickly.

 

Choosing a method

There some situations like this: implement a portal with only standard functionality (except from the layout), but only a few custom web parts and event handlers. Development time of these application is, let's say, a week and there is only a production server, and of course a development environment. The customer gets a result very quickly and everyone is happy, right? So why build the whole solution in a site definition and only use features?

We've had a few projects now with this situation (apart from the 2003 projects) and there are some things you have to take into consideration when choosing for the 'click it together' or the 'one click rollout' method:

  • Development Startup time. When components are developed and things are in production, it will take a lot of time for another developer to startup the project on their development environment and create a portal similar like the production environment. Depending on the complexity it will take hours or even days to get development ready. With the 'one click rollout' method, developers will be up and running in no time. On the other hand, when making minimal changes, the 'clicking it together' method will take less time.
  • Internal references. When clicking things together, content types, lists, site columns etc. will all get internal GUID's specified by SharePoint. No problem, until development starts. you cannot reference internal ID's because they differ between environments. This will cause dirty workarounds (ever installed MOSS using another language then English? You don't want to know what happens with internal names!) and less stable implementations. So, when you have to deal with internal references, always choose for the 'one click rollout' method!
  • Force to think about structure and metadata. When you start clicking a site together, things are likely to change during time. It's easily to change names for example, or the delete a site column, but this can cause inconsistency through the portal. Metadata and structure is one of the most important aspects of a portal, so force yourself and the customer to think it over.. and over, and again, over. For prototyping and proof of concepts, the 'click it together' method is very useful indeed! It will quickly visualize the solution and the way the customer will work with the product. It's also a good thing to invest in tools to use those prototypes to generate features and site definitions from, so the work can be reused.
  • More realistic testing scenario's. When having a testing and acceptance environment, it's very easily to roll out a whole new build, just by deleting the old and creating a new site collection (after solution rollout). Basically a matter of 15 minutes. When clicking it together, this will cause inconsistency between environments and increase the change of making mistakes.
  • Service handover. In our case, projects will go into service when the customer has accepted it. the handover to service employers will be a lot easier in the 'one click rollout' method. Basically for the same reason as the first bullet, but the project is also a a starting point. Modification done by the customer can easily be addressed and discussions if something is a bug or a change are minimal.

 

As you might already noticed, I really prefer the 'one click rollout' method for all our SharePoint implementations. This is maybe because I'm technically involved in these projects and I've learned from previous projects as well. Functional consultants might have a different opinion about this, so I'm very interested on your opinion about this. How much is it worth for you (or your customer)? Do you have success stories or maybe total disasters when it comes to deployment? Please let me know!

Wednesday, December 19, 2007 1:15:50 PM UTC #     | 

 

Microsoft Filter Pack Released#

Good news via William Bear:

"The Microsoft Filter Pack for search has been released enabling critical search scenarios across a variety of Microsoft Search products including SharePoint Portal Server 2003, Microsoft Office SharePoint Server 2007, Windows SharePoint Services 3.0, Search Server 2008, Search Server 2008 Express Edition, Exchange Server 2005, SQL Server 2005/2008, and Windows Desktop Search 3.1/4.0.

The Microsoft Filter Pack provides iFilters for the following file type extensions:

  • .docx (Microsoft Office 2007 Word Document)
  • .docm (Microsoft Office Word Macro-Enabled Document)
  • .pptx (Microsoft Office 2007 PowerPoint Presentation)
  • .xlsx (Microsoft Office 2007 Excel Worksheet)
  • .xlsm (Microsoft Office Excel Macro-Enabled Worksheet)
  • .xlsb (Microsoft Office Excel Binary Worksheet)
  • .zip (WinZip File)
  • .one (Microsoft Office OneNote Section)
  • .vdx (Microsoft Office Visio Drawing)
  • .vsd (Microsoft Office Visio Drawing)
  • .vss (Microsoft Office Visio Stencil)
  • .vst (Microsoft Office Visio Template)
  • .vsx (Microsoft Office Visio Stencil)
  • .vtx (Microsoft Office Visio Template)

NOTE The current release is not localized and available at this time in English only supporting both x86 and x64 architectures.  To download the Microsoft Filter Pack or to learn more visit:  http://www.microsoft.com/downloads/details.aspx?FamilyId=60C92A37-719C-4077-B5C6-CAC34F4227CC&displaylang=en."

Wednesday, December 19, 2007 8:29:36 AM UTC #     | 

 

WSS 3.0 and MOSS 2007 SDK's revised (December 2007)#
  • WSS 3.0 SDK
    The Windows SharePoint Services 3.0 Software Development Kit (SDK) includes documentation, as well as code examples within the topics, for Windows SharePoint Services 3.0.
    The Windows SharePoint Services 3.0 SDK describes the technologies that Windows SharePoint Services 3.0 provides for developers. It contains overview information and step-by-step, how-to procedures for programming with Windows SharePoint Services that can help you get started writing applications. There are several code examples within the documentation, as well as some tips and best practices, for using the development platform of Windows SharePoint Services 3.0.

 

  • MOSS 2007 SDK
    The Microsoft Office SharePoint Server 2007 Software Development Kit (SDK) includes documentation, as well as code examples within the topics, for Microsoft Office SharePoint Server 2007. The SharePoint Server 2007 SDK is also available as a download. To download the SDK and the sample code, see SharePoint Server 2007: Software Development Kit.
    The Microsoft Office SharePoint Server 2007 SDK describes the technologies that Office SharePoint Server 2007 provides for developers. It contains overview information and step-by-step, how-to procedures for programming with Office SharePoint Server 2007 that can help you get started writing applications. There are several code examples within the documentation, as well as some tips and best practices for using the development platform of Office SharePoint Server 2007.
Sunday, December 16, 2007 6:29:49 AM UTC #     | 

 

Starting with Forms Based Authentication in SharePoint?#

Read this first [via Andrew Connell]:

Also check out the FBA projects on CodePlex, which give you a bunch of tools and applications such as the MemberShipSeeder which is a useful tool to create roles and members in the database.

fbaseedergif

Currently we are doing a great project (WCM) with FBA. I will post some of the 'How we did it's' later on.

Sunday, December 16, 2007 6:13:45 AM UTC #     | 

 

SharePoint Monitoring Toolkit Available for Download#

The SharePoint Monitoring Toolkit helps you manage Microsoft® SharePoint® environments of all sizes with two new management packs for System Center Operations Manager 2007:

  • Windows® SharePoint Services 3.0 Management Pack
  • Microsoft Office SharePoint Server 2007 Management Pack

These packs monitor the health state of the components in your SharePoint environment that affect performance and availability. When there is an issue that may cause service or performance degradation, Operations Manager 2007 uses the management packs to detect the issue, alert you to its existence, and facilitate diagnosis and corrective actions.
The management packs monitor:
  • Windows SharePoint Services 3.0 related services (Timer, Tracing and Search)
  • Windows SharePoint Services 3.0 related Events
  • Web server applications such as Internet Information Services (IIS)
  • IIS-related Events
  • Microsoft SQL Server® database-related events
  • WSS Server performance

The SharePoint Monitoring Toolkit Management Packs have been rewritten from the ground up to take advantage of the latest features of System Center Operations Manager 2007. Major improvements from previous packs include:
  • Extended rules
  • New and improved reports
  • Additional actions
  • New views
  • Elimination of backward compatibility dependencies
  • Increased reliability
  • Noise reduction through tuning and event suppression
  • Thoroughly tested compatibility of management packs with:
    • System Center Operations Manager 2007
    • System Center Essentials
    • Microsoft Office SharePoint Server 2007 SP1

 

Download here

Thursday, December 13, 2007 6:24:03 AM UTC #     | 

 

Reusable Content with MOSS Content Management#

In 2008, I will have more focus on the WCM side of MOSS. Not only to proof that MOSS IS a good platform to built web sites on, but also give it a boost when it comes to high quality, and compliant sites. One of the funny things about that, is that I run into functionality that I wasn't ware of, simple because I never had to use it before.

One of them is the 'Reusable Content' functionality. With this functionality is possible to create reusable content blocks (you can decide if you want to be able to update them automatically from the source or not) and use then in the HTML editor. Basically this are the features:

  • In the HTML editor, there is an option 'reusable content' (the reusable content can be managed on site collection level) 
    rc-moss1
  • You can choose between reusable plain text, of reusable HTML
    rc-moss2
  • You can choose between automatic update from source, or not so you can edit it in the HMTL editor. 
    rc-moss4
  • Content block can be dragged and dropped easily
     

So, how can we extend this?

  • Reusable items list is a list, which we can extend with extra metadata
  • We can use versioning and approval to be able to edit content before publishing
  • The HTML which is generated in the HTML editor is basically a SPAN with an id, referral to the source and a property if you can edit it or not. With code we can influence and this in out applications. 
    rc-moss5
  • Of course with control adaptors or custom controls, the rendered HTML can be made  XHTML 1.0 strict
Wednesday, December 12, 2007 9:59:02 AM UTC #     | 

 

How to configure incoming emails on a SPList#

If you want to enable incoming emails on a SharePoint list in your code it might be very hard to find out how, so maybe this post help you. First make sure you have configured that incoming emails are enables on your farm. To do so, check out this great whitepaper on how to do it. Then actually it is quite simple to configure: just use the SPList.EmailAlias, only enter the prefix for the mail address in it. That's it!

Please notice that not every list can receive emails. The following can:

  • Discussion Lists
  • Picture Libraries
  • Document Libraries
  • Calendars
  • Form Libraries
  • Announcements
  • Blogs

Please also pay attention to the scenario's in which you want to enable incoming emails. Joel wrote useful information about this topic on his blog.

"Here's some suggestions/scenarios:

  1. The best place to archive emails is on the discussion list, much better than the document libraries for most scenarios.  Document libraries are really designed for e-mail attachments only (there are some options in the list/document library settings to manage what to do.)  Discussion Boards integrate e-mail content into SharePoint providing rich support for threading and filtering.
  2. Imagine putting your list as a member of your team discussion group (DL) and having it either show up on a discussion list, an announcement list, or event list for calendar view.
  3. Form libraries can also be email enabled. Use InfoPath to make the submit button of the form e-mail the form to the form library, you can now submit forms from anywhere.
  4. Note you can also e-mail enable the announcement list and your blog. This makes it easy to post new announcements on your team home page or post blog posts to your blog.

What I don't recommend:

  • Don't put it on a high volume DL, you still have the limitations of the list views. 
  • An attachment with a blank body may be rejected according to a user email and was reinfored by their call to support.
  • MS IT has been very cautious about their support for email enabled lists and specifically only supporting it on few isolated environments... "

Please read the full article here.

Wednesday, December 12, 2007 8:20:51 AM UTC #     | 

 

How to create a Site Collection in a specific Content Database#

In one of the projects we needed to create new site collections in code. The customer wanted to store the site collections in different content databases, depending on the site type. My colleague Wouter found out that it is also possible to create a site collection from the SPContentDatabase class, which automatically stores the site collection in that content database.

So for example:


foreach (SPWebApplication webApp in SPWebService.ContentService.WebApplications)
{
   if (webApp.Name == "Something")
   {
       foreach (SPContentDatabase cdb in webApp.ContentDatabases)
       {
           if (cdb.Name == "WSS_Something")
           {
                cdb.Sites.Add("siteUrl", "ownerlogin", "ownerEmail");
                break;
           }
       }
       break;
   }
}

Wednesday, December 12, 2007 7:50:41 AM UTC #     | 

 

The MOSS 2007, WSS 3.0 and Office Suite 2007 Service Pack 1#

MOSS SP1 Available here: http://www.microsoft.com/downloads/details.aspx?FamilyId=AD59175C-AD6A-4027-8C2F-DB25322F791B&displaylang=en

The 2007 Microsoft Office Servers Service Pack 1 delivers important customer-requested stability and performance improvements, while incorporating further enhancements to user security. This service pack also includes all of the updates released for the 2007 Microsoft Office System servers prior to December of 2007. You can get a more complete description of SP1, including a list of issues that were fixed, in the Microsoft Knowledge Base article 936984: Description of the 2007 Microsoft Office Servers Service Pack 1.

 

WSS 3.0 SP1 here: http://www.microsoft.com/downloads/details.aspx?FamilyId=4191A531-A2E9-45E4-B71E-5B0B17108BD2&displaylang=en

Windows SharePoint Services 3.0 Service Pack 1 delivers important customer-requested stability and performance improvements, while incorporating further enhancements to user security. This service pack also includes all of the updates released for Windows SharePoint Services 3.0 prior to December of 2007. You can get a more complete description of SP1, including a list of issues that were fixed, in the Microsoft Knowledge Base article 936988: Description of the Microsoft Windows SharePoint Services 3.0 Service Pack 1.

 

Office Suite here: http://www.microsoft.com/downloads/details.aspx?FamilyId=9EC51594-992C-4165-A997-25DA01F388F5&displaylang=en

The 2007 Microsoft Office suite Service Pack 1 delivers important customer-requested stability and performance improvements, while incorporating further enhancements to user security. This service pack also includes all of the updates released for the 2007 Office suite prior to December of 2007. You can get a more complete description of SP1, including a list of issues that were fixed, in the Microsoft Knowledge Base article 936982: Description of the 2007 Microsoft Office suite Service Pack 1.

 

Before you start downloading I would like to say... Enjoy!

Tuesday, December 11, 2007 3:27:21 PM UTC #     | 

 

Customizing the 'layouts files'#

We've been putting a lot of effort in creating the fully supported way of using SharePoint Solutions on our SharePoint projects. Currently we are able to create a full intranet of web site within a few clicks, ideally when you want to deploy the same solution of different servers. The MS Solution framework is a great way to achieve that  and we are trying to take full advantage of this concept in our projects.

There are some issues with customizing SharePoint sites however. As you might know, there are some files in the layouts directory that you 'have to' use , like the application.master, access denied page, and some other resources. There is no easy way to tell SharePoint to use another access denied page for example. There are some solutions for this problem. First of all, let take a look what MS is saying about this: http://support.microsoft.com/kb/944105

Basically, MS is quite inconsistent in this article. It says, you are not allowed to modify default files; it's an unsupported scenario. What you can do is copy the layouts folder and reference in IIS to the copy, where you are allowed to modify the files. But then in the same article, the second method is make a backup and modify the original files anyway.. hey I thought we were not allowed to... weird, and I do think is not a very good solution! Yes, it is the easiest (quick and dirty) way, and to be honest, the alternative is quite complex.

The 'better' option (workaround), called the 'BrandingModule Project'  is to create a HttpModule that handles the requests to those layouts resources. There is a fine article by Brett, inspired by Liam Cleary, that describes this concept very clear. Although the code is not complete (I'll post the code later on, thanks to Lucy), it gives some hands to create a good workaround for this problem. After implementing this solution, we are able to use our own customized application.master, access denied pages etc. Great work! I do hope that these workarounds are not necessary anymore in the next version... :)

Tuesday, December 11, 2007 8:02:56 AM UTC #     | 

 

Yet another SharePoint certification!#

After passing the Windows SharePoint Services 3.0 Development exam a few months ago passed my 70-630 (MOSS Configuring) exam today! Whohoo!

Friday, December 07, 2007 9:26:53 AM UTC #     | 

 

PDC 2008 announced!#

I'm probably not the only one who's putting this on the Internet, but:

"We are delighted to announce the date and location of the next Microsoft Professional Developers Conference (PDC): October 27–30, 2008 at the Los Angeles Convention Center. PDC is the definitive Microsoft event for software developers and architects focused on the future of the Microsoft platform. Mark your calendars and save the date. More information coming soon."

More info at: http://msdn2.microsoft.com/en-us/events/bb288534.aspx

Friday, December 07, 2007 9:15:45 AM UTC #     | 

 

Dundas Chart and Gauge for SharePoint 2007#

Dundas recently released Dundas Chart and Dundas Gauge for SharePoint 2007. Check out the components here!

 

screenshot

Dundas Chart for SharePoint began with proven Dundas .NET technology and was then redesigned for SharePoint Server 2007. With Dundas tools, you can add AJAX-enabled interactive charts to your SharePoint portal with ease.

screenshot

Dundas Gauge for SharePoint is the first set of advanced gauge components designed specifically for Microsoft's SharePoint portal technology. While utilized to represent data that simply can't be shown effectively in a chart format, Dundas Gauge for SharePoint is particularly beneficial when creating collaborative dashboard applications.

Thursday, December 06, 2007 7:14:29 AM UTC #     | 

 

MOSS SP1 Release Date December 12th#

The MOSS 2007 SP1 release date is set to December 12th this year, as I'm told by MS today. Great news, because earlier it was set to Q1 2008. For more info about the Service Pack 1, check Joel's blog posting.

Some highlights:

  • Windows Server 2008 Support and Compatibility
  • ASP.NET for AJAX Compatibility and Support Including Support for Web Parts Built with AJAX Control Toolkit for ASP.NET and AJAX 1.0 Extensions (KB941955)
  • New STSAdm Commands
  • Includes 60+ Hotfixes Across WSS 3.0 SP1 / SharePoint Server 2007 SP1

update: December, not November :)

Monday, December 03, 2007 3:06:01 PM UTC #     | 

 

Accessibility & MOSS WCM: an inconvenient truth#

It's been an interesting time the last few months. There was a lot going on the WCM pie of the MOSS platform, especially on accessibility guidelines. Like three years ago with SharePoint 2003, I've started writing about the inconsistency of the render output. The SharePoint HTML and CSS was, let's say, quite challenging...

So, almost a year ago, a few announcements (and here) were made about this topic. MS Netherlands announced an template that meets the Internet guidelines set by the Dutch government (overheidsrichtlijnen). Also HiSoftware announced the Accessibility Kit for SharePoint (AKS) initiated by MS. Then it was quite quiet for a while...

Last week, the AKS 1.0 was released to the public: a toolkit with control adapters for existing SharePoint controls. Quite handy, but not the solution for making sites accessible. What about the web parts and web part zones? These SharePoint (sealed) elements are simply a pain in the %#$#, when it comes to accessibility.

I also used the Dutch template (login required, credits to Virtual Affairs), which is based on the same principles: control adapters and a good master page/CSS implementation.

Summarized: thanks for the work, but we have done that ourselves a year ago!

I have to admit, I've been thinking about MOSS as WCM platform and how we could use it in a decent way. Skip the web parts and use (user)controls? This is ok, but it avoids a very good mechanism for content management. Because let's be realistic, what on earth must MS have been thinking when they released the 'WCM part of the pie' for MOSS??!!

Then I ran into a new blog of the Imtech MOSS team (definitely worth subscribing!). They wrote about a SharePoint Toolkit, claiming to be 100% accessible on Dutch guidelines, including the use of web parts and zones! Interesting, but first see, then believe... So we (Dutch Information Worker User Group, DIWUG, of which I'm part of) invited Waldek Mastykarz to tell something about it one of the evening sessions. Quite interesting, and so thought about 50 other people as well that have been struggling with accessibility in MOSS.  His presentation is here online for download. No code here, but a very good view of the problems of the platform, and the solution. For Dutch readers, also take a look at the first DIWUG presentation about the guidelines from my colleague Martijn Warmoeskerken of XSCheck.nl.

So, the inconvenient truth... let's face it: MOSS WCM is not quite mature yet when it comes to output rendering. Too many 'workarounds' must be made to make it render decent HTML. I'm not all to blame MS, they've done a terrific job setting up a platform that big. But where on earth were the QA guys? Building such a great platform for the web, without any notice for guidelines and accessibility! I assume MS knows about the problems, but maybe its a good idea to come sit with us (implementation partners) to talk about the problems. Let us explain why and what. Maybe you could also give some answers in why things are build the way it is implemented now. I'll be at the SharePoint Conference in Seattle in March, maybe we could set up a lunch meeting?

My advice to Microsoft: in Office 14, please invest a lot in accessibility and output rendering!

One last notice on my work at Tam Tam: I'll be focusing on MOSS WCM the coming year, together with 4 other colleagues. Let's make it a convenient truth!

Monday, December 03, 2007 9:01:17 AM UTC #     | 

 

All content © 2012, Mart Muller
On this page
This site
Calendar
<February 2012>
SunMonTueWedThuFriSat
2930311234
567891011
12131415161718
19202122232425
26272829123
45678910
Archives
Sitemap
Disclaimer

Powered by: newtelligence dasBlog 1.9.7174.0

The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.

Send mail to the author(s) E-mail

Theme design by Jelle Druyts