How to Deliver a Successful Project – Part 1 – What Does “Successful” Mean?

, - Posted by

I am starting a new series on how to deliver a successful project. Please note that my background is in IT therefore the examples used in this series maybe related to IT. I believe however, that the same methodology can be applied with any kind of projects.

INTRODUCTION

This is a series:

Part 1. What Does “Successful” Mean?
Part 2. Start It By Defining THE Business Requirements
Part 3. Accurate Estimates, Quoting and Proposals
Part 4. The Project Plan and Work Breakdown Structure (WBS)
Part 5. Delivery: Communication is Key
Part 6. Managing Changes
Part 7. Project Closure

So, what is a successful project? For me a successful project means the following:
1. The project is finished within the deadline and budget;
2. The client gets the promised deliverables;
3. The client is happy and would like to be in a long-term relationship with you;
4. Your project team is happy and no one is leaving the team or moving to an another company.

If I have to lead a project and any of the above is missing, I would consider the project failed. For example: there is no point of delivering a project within a deadline and budget but there are still missing deliverables (ie. you have to cut down some of the deliverables simply because you don’t have enough remaining budget). Or, you deliver everything within the budget, deadlines and you’ve delivered all of your functionalities but you have get your team members to work 12 hours a day for the whole month. In the end, your team members are burned out and they are wanting to get an another job.

For me a successful project is satisfying all of the project teams and stakeholders: the clients, you – as the project manager – and your team members.

To be continued….

PS:
In this series I will introduce various tips and tricks that can help you delivering a successful project. Again, all of the information you are going to read on this series come from my experience only. I don’t have a degree or certification in project management. However, the methodologies and processes that I am using have been proven successful for many of the projects I am leading.

Just in case you have not known me nor heard about me, my name is Tommy Segoro and I have been in the IT industry for more than 10 years now. I have been in various positions and roles and have developed and led so many IT projects. Please read more about my profile in the About page.

SharePoint Performance Tuning 3 – Customizations

, - Posted by

INTRODUCTION

 

This is a series. The previous article can be found at Series 2.

 

Now we’ve arrived at the customizations topic. Customisations obviously cover a broad range of topics. Therefore, in this particular article I want to discuss only the basic elements and some tips that we can do to increase performance.

 

 

SHAREPOINT CUSTOMISATIONS IN GENERAL

 

Disposing SPWeb and SPSite and other disposable objects

We’ve now read a lot about this. Ensure that you dispose SPWeb and SPSite and other disposable objects properly. In MOSS, the navigation provider for example, needs to be disposed after use. When we don’t dispose these objects properly and only relying on Garbage Collector, we’re exposed to the risk of having memory leaks. The more users access this particular part of the code, the more severe the impact is to your RAM.

 

Use reasonable-sized images and media files

Although when you’re using SharePoint as Intranet it’s usually reasonably quick (because it’s local to the network and using network speed instead of WAN speed), it’s still good to use and upload reasonably-sized images and media files. It will save you a lot of bandwidth.

 

Eg. Why would you upload 3000×2000 image if the general maximum resolution you use in your company is only 1024×768.

 

Also, when you’re customising the UI of your SharePoint site, use GIFs where possible. Gradient colours don’t normally work correctly on GIFs, they have to be JPEGs but JPEGs are generally larger than GIFs.

 

Applying general good coding practice

MS has released a page in MSDN detailing good Sharepoint coding practice. http://msdn.microsoft.com/en-us/library/bb687949(office.12).aspx.

 

There are things like:

– Disposing SPWeb and SPSite;

– Using SPQuery instead of SPList.Items;

– etc

 

Use cached resultsets

You can cache resultsets if you wish. I’ll talk more about this later. Basically, instead of you keep re-iterating list items directly using SPList and SPQuery, you can save those SPListItem collection/resultsets using custom entity wrapper in cache technologies such as .NET Cache, Memcached, etc and only interacting with the cache.

 

Things like iterating all sites and sub-sites can be expensive, too. We can save a lot of database round-trip when we interact with cached resultsets instead of with SPWeb/SPSite directly.

 

 

SHAREPOINT CUSTOMISATIONS FOR INTERNET WEBSITE

 

You can use SharePoint as your internet website, too (ie. MOSS Publishing Site). And normally you will turn on anonymous access. The rule of thumb is, our website has to be quick and should load as fast as possible. The things that affect loading speed are:

– HTML source size;

– Image and media elements size;

– Script size (eg. Javascript that’s referenced by your website);

– Other referenced file size (eg. CSS);

– Length of page scroll. The longer the page is regardless how small/plain it is in size will still take some time to render on user’s browser.

 

With these things in mind, we can configure our MOSS site to be as “small” as possible:

– Hide CORE.JS from anonymous view. CORE.JS is only used to perform SP-related javascripted-tasks such as clicking on Site Actions displaying sub-menu drop-downs, etc. Anonymous user doesn’t need to see this hence can be hidden. This will save you several hundred kilobytes!

– Avoid web-parts and use custom controls instead. Web parts spit out nasty and uneccessary HTML code. Not only they’re not XHTML compliant, they’re also adding few KBs to your overall HTML source size. If you have multiple web parts on your page, they can surely affect your overall HTML source size.

– Hide SharePoint-related CSS (such as CORE.CSS). This is used to style the SharePoint-related menus and controls. Anonymous users don’t need to see this either. This can save you several KBs, too.

 

 

CONCLUSION

 

So I hope that this helps. If you come up with other suggestions please let us all know.

 

 

 

Cheers,

Tommy

SharePoint Performance Tuning 2 – SharePoint Configuration

, - Posted by

INTRODUCTION

 

This is a series. The previous article can be found at Series 1.

 

The next step that we have to be aware of after the hardware and topology configurations is the SharePoint Configuration itself. Please share your thoughts, too.

 

 

SHAREPOINT CONFIGURATION

 

Using different user accounts for different services

ALWAYS use different user account for each SharePoint service. The reason is not so much for improving the performance but it’s more for troubleshooting. If there are particular services that’re running slowly or down, you can easily identify them. While if every SharePoint service is configured using the same user account, you will not be able to distinguish them.

 

Also, SharePoint automatically grants a particular account specific access to DB, file system, etc. If you use the same account everywhere then that account is exposed to security risk because it suddenly has access to everything.

 

In SharePoint 2007 the following services need a dedicated user account (please add more in comments if I’m missing anything):

– Account installing SP;

– Account to run SP service (ie. the Farm account);

– WSS search and content access account;

– MOSS search;

– User profile sync;

– SSP service;

– Excel service;

– SSO;

– APP POOL for each of the website application you created.

 

In SharePoint 2010 there are more! You’ll need:

– AS ABOVE;

– APP POOL account for each service application you install;

– Service account for some of the additional services such as Lotus Note Connector, etc.

 

Please add to the list everyone.

 

 

Search crawl synchronization schedule configuration

Ensure that you specify “reasonable” sync search schedule. I’ve been to a client which search incremental crawl is specified to run every 5 mins and the full crawl is scheduled to run at 12pm every day. This causes bottleneck on the server especially the database server.

 

 

Define caching whenever possible

For content/pages that doesn’t change much, you can put caching on. This will improve user experience. I will talk about this later when we arrive at the programming section.

 

 

Adhere to Microsoft recommendations on limits

There are limits that MS has specified in terms of the number of items in a list, no of sub-sites, etc. Ensure that we adhere to these figures.

 

 

Ensure AD authentication instead of SQL authentication to the databases

Ensure that we use AD authentication instead of SQL authentication when we’re configuring SP (eg. creating sites, services, etc). Based on MS, AD authentication is faster and more secure.

 

 

For more information please go to http://technet.microsoft.com/en-au/library/dd335963(office.12).aspx and http://technet.microsoft.com/en-us/library/cc263061(office.12).aspx.

 

 

 

 

Hope this helps and see you on the next article! 🙂

 

Tommy

SharePoint Performance Tuning 1 – Hardware Requirements and Server Topology

, - Posted by

INTRODUCTION

 

Hi everyone, in this opportunity I would like to share with you some of the tips that can help us tuning our SharePoint Farm performance. This is a series. Please also note that all of the articles mentioned in this series are purely based on my experience and some readings that I’ve done myself only. Therefore, please share your thoughts and opinions.

 

 

HARDWARE REQUIREMENTS

 

I have to admit that SharePoint consumes a lot of server resources. Therefore, the very first step to tune SP farm performance is by ensuring that we’re using the appropriate hardware. There are basics that we can follow regarding hardware requirements:

 

64-bit compliant

Ensure that the hardware we’ll be using are 64-bit compliant. In fact from this moment on I will not be installing SharePoint on hardware that’s not 64-bit compliant. The reason is because 32-bit environment can only handle less than 4GB of RAM. Therefore, for scalability I will always use 64-bit compliant hardware.

 

Fast network cards

Since there may be huge traffic coming in/out the SharePoint servers, use gigabit NIC if possible.

 

Disk speed

SharePoint also does a lot of disk read/write through its content databases. Therefore, the faster your disk speed the better.

 

Plenty of RAM

I personally will always start with 4GB of RAM for the Sharepoint Server and 4GB of RAM for the database server. In fact for SP 2010, Microsoft suggests that you’ll need 8GB for the Sharepoint server itself.

 

SharePoint is very RAM intensive. You’ll expect at least 1.5GB of RAM usage on the database server itself. That’s given that the database server only contains SP databases. If you use a shared DB server (ie. shared with other custom apps) then you’ll probably need more RAM.

 

Minimum hardware requirements

Ensure that you adhere to Microsoft’s minimum hardware requirements for installing SharePoint. I’m sure Microsoft has tested this themselves.

 

For more information please visit http://technet.microsoft.com/en-au/library/cc850692(office.12).aspx.

 

 

SERVER TOPOLOGY

 

The minimum topology you’ll need will be 1 dedicated Sharepoint server and 1 dedicated database server. NEVER put database and Sharepoint on the same server!

 

The dedicated Sharepoint server can have all of Sharepoint features inside (eg. Central Admin, Indexing, Search, etc) and we can always scale this out into more servers when required. However, throughout my experience, the bottleneck is always on the database server. Therefore, you can imagine how slow it’s going to be if the DB, OS, Sharepoint are all on the same server.

 

 

CONCLUSION

So, when we’re about to deploy Sharepoint, ensure that we have kept this in mind. A lot of clients that I’ve been into think that “Oh…we can always expand later..let’s just use this spare VM for it”. But then in the end, upgrade can be painful and consuming so much time. Especially if SP has been running and the content database size has increased so much!

 

I’m actually writing this particular article during a client engagement which the client uses a 32-bit environment for their SP farm. They put DB and SP on the same server. The server itself can only have ~3.5GB of RAM max and the DB itself already consumes 1.7GB of RAM. This is a dedicated SP server by the way, therefore there’s no other application using the DB nor the server. There are now issues with downloading documents that are more than 700kb in size because the server just can’t hold them in the memory any more!

 

They’re in the process of upgrading their farm but of course it will take time to do. With all of the after hour outages, etc. It wouldn’t happen if they’ve been applying the basics I mentioned above. So yeah…plan this very first step well and we’ll save a lot of time and costs in the future.

Manage User Profiles Not Displaying Any Results in RTM

, - Posted by

In 2007 when you click on Manage User Profiles it displays ALL user accounts by default.

 

In 2010 this isn’t the case. When you click on Manage User Profiles it says “There are no results to display” and I was a bit surprised when I first saw this because I thought the import wasn’t running successfully. I tried to change the View drop-down-list from Active Profiles to Profiles Missing from Import but nothing returned.

 

I then tried to type in some keywords and that’s when the results were returned.

 

Is this behaviour by design or a bug?

 

 

Cheers,

Tommy

Our Services

We provides you the best Services in our themes.

  • Click on the link below to see a full list of clients which we have developed solutions and provided consultancy for.

    READ MORE

  • We are solution-centered and not application-centered.

    READ MORE

  • Being creative and having fun and yet still delivering a fantastic service is the center of our values.

    READ MORE

  • TFS Consulting Services guarantees delivery that is within budget and deadline or you engage us for free.

    READ MORE

Implementing IT does not have to be difficult.

As long as you have the right methodologies

We have heard a lot of complaints from our clients that IT a lot of the times give them headache. The issues range from over-budget implementation, server is too hard to maintain, application is not user friendly, features not complete and many others. If you have ever experienced similar situations, don’t worry. This is why TFS Consulting Services is here. We exist to help clients implementing a successful IT solution. We have various methodologies which we have proven working in delivering a successful IT implementation. Below is the list of some of our key service offerings:
  • Planning and Methodologies

    Implementing IT solution does not have to be difficult. TFS Consulting Services has a lot of resources on planning and methodologies that will ensure successful delivery of your IT solution. TFS Consulting Services has been around in the web industry for more than 10 years and has experienced all the successes and failures of various type of IT deployment.

    read more

  • Technical Resource

    Do you need a technical resource? TFS Consulting Services can also provide you with technical resource for developing ASP.NET (C# and VB.NET), SharePoint (2003, 2007, 2010, 2013) and MS CRM applications. Our resource is an Microsoft Certified Personnel (MVP) and Microsoft Certified Technology Specialist (MCTS) in all ASP.NET, SharePoint and CRM.

    read more

  • IT Consulting & Advice

    Make sure your IT implementation is robust and scalable. TFS Consulting Services can provide consulting and advice on industry’s best practice on various web-related areas such as website security, design and usability, application-specific (such as SharePoint)’s best practice, Search Engine Optimisation (SEO), coding standards and many others.

    read more

  • Solution Development

    Finally TFS Consulting Services provides you with solution development service. We mainly work with Microsoft technologies (ie. .NET and SQL Server), however we are also capable of developing with PHP and MySQL. If you ever need any business process automation, integration and solution development work,  we are the trusted expert you should go to.

    read more

For more detailed service offerings please visit our Solutions page.

Testimonials

  • I’m happy to recommend Tommy as a knowledgeable and diligent developer.

    Mike Stringfellow, Vivid Group
  • Tommy has a lot of great ideas that can be delivered into great products. It’s a pleasure working with him because he has a broad knowledge about available technologies out there and he knows what’s best for the client’s needs. He just knows how to work effectively and efficiently.

    Teddy Segoro, Student Edge
  • I’ve worked with Tommy over the past 6 months and have found his approach to development (especially SharePoint) absolutely outstanding. Tommy goes beyond the boundries of typical software development with his ability understand what a client requires and then build it into fully fledged software solution. Coupled with his professional “Best Practice” approach, you get Continue Reading

    Michael Bonham, DSC-IT

Contact us

Tommy Segoro
tommy@tfsconsulting.com.au
+61 404 457 754

   

© TFS Consulting Services 2026. All rights reserved.

www.incorporator.com.au