Search This Blog

Thursday, March 22, 2012

Speed Up Your DotNetNuke Portals

Speed Up Your DotNetNuke Portals

To improve the responsiveness of your DotNetNuke application, set the Performance Setting to Heavy Caching: Step 1: Change Cache Settings
  1. Log into your poral as host or another superuser
  2. From the Host menu, click Host Settings
  3. Expand the Advanced Settings section
  4. Expand the Performance Settings section
  5. Select Heavy Caching in the drop down for Performance Setting
  6. Click Update Other Alternatives:

TrayKeepAlive from Gotchasoft

Gotchasoft ( offers a windows application: TrayKeepAlive, which pings your DotNetNuke application's keepalive.aspx every fifteen minutes to keep IIS from shutting down the application. This significantly improves a sites response time with infrequent visits.

Blowery Compression Module

Scott McCulloch has a very comprehensive article on installing the Blowery Compression Module here:

SlipStream Module

SlipStream for DotNetNuke is available on Snowcovered, features:
White space removal; autmatically remove tabs, carriage returns, extra spaces, and comments from the raw HTML sent to the user.
View state removal; remove the nasty string of characters at the bottom of every transmission and hold it on the server.

Performance Settings

DotNetNuke can cache your page information in memory, so that subsequent attempts to access a page will show the same data and not reread from the database.
To improve the responsiveness of your DotNetNuke application, set the Performance Setting to Heavy Caching:
Log into your poral as host or another superuser

From the Host menu, click Host Settings

Expand the Advanced Settings section

Expand the Other Settings section

Select Heavy Caching in the drop down for Performance Setting

Click Update

Wednesday, March 21, 2012

SQL SERVER – The server network address “TCP://SQLServer:5023″ can not be reached or does not exist. Check the network address name and that the ports for the local and remote endpoints are operational. (Microsoft SQL Server, Error: 1418)

While doing SQL Mirroring, we receive the following as the most common error:
The server network address “TCP://SQLServer:5023″ cannot be reached or does not exist.
Check the network address name and that the ports for the local and remote endpoints are operational.
(Microsoft SQL Server, Error: 1418)
The solution to the above problem is very simple and as follows.
Fix/WorkAround/Solution: Try all the suggestions one by one.
Suggestion 1: Make sure that on Mirror Server the database is restored with NO RECOVERY option (This is the most common problem).
Suggestion 2: Make sure that from Principal the latest LOG backup is restored to mirror server. (Attempt this one more time even though the full backup has been restored recently).
Suggestion 3: Check if you can telnet to your ports using command TELNET ServerName Ports like “telnet SQLServerName 5023″.
Suggestion 4: Make sure your firewall is turned off.
Suggestion 5: Verify that the endpoints are started on the partners by using the state or state_desc column the of the sys.database_mirroring_endpoints catalog view. You can start end point by executing an ALTER ENDPOINT statement.
Suggestion 6: Try the following command as one of the last options.
Suggestion 7: Delete the end points and recreate them.
If any of above solutions does not fix your problem, do leave comment here. Based on the comment, I will update this article with additional suggestions.
Please note that some of the above suggestions can be security threat to your system. Please use them responsibly and review your system with security expert in your company.

Saturday, March 17, 2012

Hướng dẫn cài đặt và cấu hình First Lotus Domino Server

Sau khi đã cài xong Domino Server, bước tiếp theo là các bạn cài đặt và cấu hình First Domino
 I. Lên kế hoạch
1. Domino Domain: NN
2. Domino Named Network: TCPIP
3. Organization: COM
4. Organization Unit: NN
5. Server name: Mail
6. Static IP;
Phần tìm hiểu về các file ID tôi sẽ giải thích với các bạn trong topic Bảo mật trong Domino sắp tới.
II. Cài đặt
1.Nhấp chuột vào Start/All Program/Lotus Application/Lotus Domino Server
2. Cửa sổ Welcome to Domino Server Setup hiện lên, nhấn Next
3. Cửa sổ First or addtion server, hiện lên, chọn Set up the first server or a stand-alone server, chọn Next

4. Cửa sổ Provide a server name and title hiện ra, nhập các thông tin như hình, sau đó nhấn Next
5. Cửa sổ Choose your organization name hiện ra
  • Phần Organization name điền vào: COM
  • Sau đó nhấp chuột vào nút Customize...

  • Phần Organization Unit name: NN
  • Các bạn nhập mật khẩu cho OU Cert ID
  • Sau đó nhấn OK
  • Tiếp các bạn nhập mật khẩu cho OU ID, sau đó nhấn Next
6. Cửa sổ Choose the Domino domain name, gõ vào tên domain, nhấn Next ( ở đây tôi để mặc định domain là NN)
7.Cửa sổ Specify an Administraor name and password, gõ vào tên và mật khẩu của người quản trị
Chú ý: Nhớ tích vào Also save a local copy of the ID file ( nhân bản file ra local, tiện cho việc quản trị về sau).
11. Lựa chọn các dịch vụ cho Domino Server, ở đây tôi chọn LDAP, HTTP, Các dịch vụ Mail, các bạn có thể tùy biến dịch vụ bằng cách nhấp chuột vào nút Customize.... Sau khi lựa chọn xong, nhấn Next
12. Cửa sổ Domino network settings hiện ra, các bạn cấu hình các tham số cần thiết về TCP/IP, sau đó nhấn Next
13. Cửa sổ Sucure your Domino Server, để mặc định, nhấn Next
14. Cửa sổ Please review and confirm your chosen server setup options, nhấn Setup
15. Hệ thống đang cài đặt
16. Cửa sổ setup sumary, các bạn nhấp Finish để hoàn tất.
17. Nhấp đúp chuột vào biểu tượng Domino trên màn hình, các bạn tích vào các lựa chọn phù hợp với mình
  • Start Domino as a Windows service: khởi động domino như là một dịch vụ của windows ( ko có màn hình console)
    Start Domino as a regular application: khởi động domino như là một ứng dụng ( có màn hình console)
    Alway start Domino as a service at system startup: cài đặt services domino vào hệ thống, khởi động lúc start hệ thống
  • Ở đây tôi chọn; Start Domino as a regular application
Sau đó nhấn OK
18. Cửa sổ console của Domino hiện lên, hoàn tất việc cải đặt và cấu hình
Video cấu hình
Bài tiếp theo: Cài đặt Lotus Notes ( Notes Client, Domino Administration Tool)

Thursday, March 15, 2012

Blocking Skype and other IM protocols in Forefront TMG

It has never been easier to block instant messaging (IM) with Forefront Threat Management Gateway (TMG). If you’ve read my article that I wrote a couple of years ago on how to block IM protocols on ISA Server, you’ll definitely appreciate the ease with which you can do the same stuff more effectively with TMG.
In this post, I show you how you can block Skype, Google Talk, Yahoo Messenger, Live Messenger, etc using Forefront TMG 2010.
Before I go in to the step-by-step procedure, I want to highlight what’s happening in the background.
  • Microsoft Forefront TMG 2010 now comes with URL Filtering. URL filtering enables you to block web content belonging to a particular category such as Chat, Social Networking, or Pornography.
  • Another new feature in TMG 2010 is Outbound HTTPS inspection. This allows all HTTPS user traffic to be inspected by TMG
These are the two new features that we will leverage to block chat. Here is a summary of what we will do:
  • The only allowed traffic on your TMG server is regular web traffic (HTTP and HTTPS). I am against creating “generic” rules like “allow all” from internal to external when you have SecureNAT clients in your network as this defeats the purpose of filtering.
  • Turn on HTTPS inspection. Read my earlier post if you need help enabling HTTPS inspection.
  • In a “Deny” rule on your Web Access Policy, add the “Chat” URL category.
Why do you need HTTPS inspection?
Many IM clients and software like Skype, try to connect using dynamic UDP ports and eventually fail back using HTTPS. With HTTPS inspection turned on, TMG will be able to inspect inside HTTPS to see if the software is trying to request access from a blocked URL.

1. In the Forefront TMG console, locate your Web Access Policy that denies traffic. If you do not have one, right click on Web Access Policy in the left pane and choose Configure Web Access Policy.
2. Click on the “To” tab. Click the Add button.
3. Expand URL Categories. Add the “Chat” URL category to the list.

4. Click OK and Apply your changes. Wait for the changes to synchronize (Tip: you can verify this under Monitoring > Configuration)

Now for the best part: try connecting to Skype, or any of your favorite instant messaging software. Note that the web versions of these messengers are also blocked! Smile


On a closing note – you can use the same technique to block P2P (peer-to-peer) and file sharing applications like eMule, Kazaa, eDonkey, BitTorrent, etc using TMG. In step 3, choose “P2P/File sharing” URL category.

Saturday, March 10, 2012

Hướng dẫn cài đặt Lotus Domino Server Enterprise 8.5.3

(Setup Lotus Domino Server Enterprise 8.5.3)
1. Yêu cầu phần cứng tối thiểu ( áp dụng đối với hệ điều hành Windows)

2. Yêu cầu hệ điều hành
  • Windows 2003/2008 tùy vào phiên bản các bạn cài đặt 32 bit hay 64 bit, chọn bộ cài domino hợp lý.
  • Ở đây tôi chọn Windows 2003 R2 64 bit và Lotus Domino 8.5.3 32 bit để demo cho các bạn
3. Yêu cầu trình duyệt
  • Internet Explorer 7 trở lên

 4. Cài đặt Domino Server
Duyệt đến thư mục chứa bộ cài Domino Server, chạy file setup.exe
Cửa sổ Welcome to the InstallShield Winzard for Lotus Domino, hiện ra, chọn Next
Cửa sổ tiếp theo hiện ra, chọn I accept the terms in the license agreement, chọn tiếp Next
 Cửa sổ tiếp theo, chọn thư mục cài đặt Domino, nhấn Next
Cửa sổ tiếp theo, chọn Next
Cửa sổ tiếp theo, chọn Domino Enterprise Server, chọn Next
Cửa sổ Sumary hiện ra, chọn Next để tiến hành cài đặt
Hệ thống đang được cài đặt

Chọn Finish để hoàn tất quá trình cài đặt
Video hướng dẫn cài đặt

Bài tiếp theo: Cài đặt First Domino Server

Tổng quan về Lotus Domino Server

Tổng quan về Lotus Domino Server

IBM  Lotus Domino là một phần mềm đẳng cấp thế giới cho kinh doanh, hợp tác và các ứng dụng tin nhắn, cung cấp độ tin cậy cao, khả năng mở rộng, và nhiều các ứng dụng bảo mật với tổng chi phí thấp, giúp đỡ các công ty nâng cao hiệu suất nhân viên, hợp lý hóa các quy trình xử lý và cải thiện đáp ứng kinh doanh tổng thể
Các tính năng của Lotus Domino
  • Nhắn tin với các công cụ mở rộng có sẵn
  •  Cung cấp sự linh hoạt và sự chọn lựa nền tảng phần cứng, hệ điều hành, danh bạ và tiếp cận người dùng
  • Giúp duy trì một chi phí sở hữu thấp để nhắn tin và cơ sở hạ tầng cộng tác bằng cách tối ưu hóa các tài nguyên có sẵn như CPU, băng thông mạng, đĩa lưu trữ, máy chủ, và không gian lưu trữ.
  • Tối đa hóa khả năng có sẵn với Clutering, transaction logging, phục hồi lỗi máy chủ, và các công cụ chuẩn đoán tự động.
  • Dễ dàng quản trị, đòi hỏi một số lượng tối thiểu nhân viên để triển khai, quản lý và nâng cấp
  • Hỗ trợ các dịch vụ Web, các tiêu chuẩn mở, các công cụ để tích hợp với các ứng dụng hiện có
  • Việc đầu tư có thể mang lại lợi nhuận nhanh chóng với Lotus Domino giải pháp cho các quá trình kinh doanh như quản lý quan hệ khách hàng, chuỗi cung ứng (Supply Chain) và theo dõi dự án
  • Nhiều kiến trúc bảo mật, giúp bảo vệ dữ liệu kinh doanh quan trọng.
 Các phiên bản của Lotus Domino Server

  1. IBM Lotus Domino Messaging Server
IBM  Lotus Domino Messaging Server đáp ứng việc triển khai rộng thư điện tử , lịch cho một công ty với các ứng dụng cộng tác cơ bản. Lotus Domino Messaging Server kết hợp hỗ trợ các tiêu chuẩn thư tín mới nhất với hệ thống thư tín chuyên nghiệp, lịch và lập kế hoạch, thảo luận CSDL (discussion database), khả năng tham chiếu cơ sở dữ liệu, tất cả có trong gói phần mềm quản lý và tin cậy.
Các tính năng :
  • Thư điện tử, lịch (calendar) và lập kế hoạch (sheduling)
  • Chức năng quản lý thông tin người dùng, bao gồm danh bạ người dùng và nhật ký người dùng
  • Thảo luận CSDL ( Discussion database)
  • Tham chiếu các CSDL với các công cụ cơ bản phục vụ cho việc xem tài liệu
  • Các mẫu Blog (template) phục vụ cho việc truy cập từ Lotus Notes và trình duyệt Web
  • Lotus Domino partitioning – cho phép cài nhiều domino server trên cùng một máy vật lý sử dụng một chung mã code domino server
  • Tích hợp các công cụ quản trị và quản lý hệ thống
  • Các mẫu RSS
  • Khả năng nén CSDL làm giảm bớt dung lượng
  • Hỗ trợ các chuẩn FIPS 140-2 cho việc mã hóa thư tín Lotus Note
  1. Lotus Domino Enterprise Server
IBM  Lotus Domino Enterprise Server đáp ứng việc triển khai rộng thư điện tử , lịch cho một công ty với các ứng dụng cộng tác. Nó bao gồm tất cả các tính năng của Messaging Server, cộng thêm việc hỗ trợ các ứng dụng intranet và Internet.
Tính năng người dùng
  • E-mail, lịch và lập kế hoạch
  • Chức năng quản lý thông tin các nhân, bao gồm danh bạ người dùng và nhật ký người dùng
  • Discusion databases
  • Tham chiếu các CSDL để xem tài liệu
  • Các mẫu Blog (template) phục vụ cho việc truy cập từ Lotus Notes và trình duyệt Web
  • RSS
  • Teamroom
  • Cho phép chạy các ứng dụng cộng tác trên Lotus Domino
Tính năng máy chủ
  • Lotus Domino partitioning
  • Lotus Domino clutering phục vụ việc chống lỗi và cân bằng tải
  • Tích hợp các công cụ quản trị và quản lý hệ thống
  • Chức năng nén CSDL làm giảm bớt dung lượng
  • Hỗ trợ các tiêu chuẩn FIPS 140-2 mã hóa Lotus Note email
  1. IBM Lotus Domino Utility Server
IBM Lotus Domino Utility Server là một tuỳ chọn cấp phép máy chủ ứng dụng bao gồm quyền truy cập không giới hạn tới các ứng dụng không có thư điện tử từ một trình duyệt web hoặc từ một Lotus Notes được mua riêng cho một người dùng liên kết. Quyền sử dụng Domino Designer để tự xây dựng các ứng dụng phải được mua riêng.
Với Domino Utility Server, những người sử dụng trình duyệt web không cần có giấy phép truy cập máy trạm ngay cả khi ứng dụng yêu cầu đăng nhập (xác nhận với Domino Directory). Lợi ích này rất phù hợp với những ứng dụng có số người sử dụng lớn hoặc không xác định được như các ứng dụng tự phục vụ trong mạng nội bộ / mạng nội bộ mở rộng, và cộng đồng Internet.
Bạn có thể tận dụng hàng trăm ứng dụng nhà cung cấp hiện có trên nền Domino như tự động hoá lực lượng bán hàng, quản trị quan hệ khách hàng hay trung tâm tìm kiếm cuộc gọi, hoặc các ứng dụng tuỳ biến tự phát triển (với một máy trạm Domino Designer được mua riêng), hoặc các ứng dụng tuỳ biến được phát triển bởi một trong số hàng nghìn đối tác của IBM trên toàn thế giới.
Lưu ý:
·         Quyền sử dụng chức năng truyền tin không có trong Domino Utility Server.
·         Domino Utility Server không bao gồm quyền sử dụng Lotus Notes hay Domino Designer. Nếu bạn muốn dùng các tuỳ chọn máy trạm này, bạn phải mua các giấy phép riêng.
·         Domino Utility Server có bao gồm quyền sử dụng hạn chế đối với IBM WebSphere Application Server.
·         WebSphere Application Server.
Các tính năng
·         Truy cập tới các ứng dụng cộng tác không phải là Email
·         Lotus Domino partitioning
·         Lotus Domino clutering
·         Tích hợp các công cụ quản trị và quản lý hệ thống
·         Chức năng nén CSDL làm giảm bớt dung lượng
       4. IBM Lotus Domino Express
Sử dụng cho các doanh nghiệp nhỏ và các phòng ban nhỏ trong tổ chức lớn

Bài tiếp theo:

Hướng dẫn cài đặt Lotus Domino Server Enterprise 8.5.3

Saturday, March 3, 2012

Getting Started with Microsoft Visual Studio Team Foundation Server 2010

The new Basic configuration for Team Foundation Server gives you an easy to set up version of Team Foundation Server that supports source control, work items, and builds. It is a great place to migrate your Visual SourceSafe assets and pick up new features in the process. I wanted to do a walk through on how to get started using the system.
This post will be most helpful for those of you who have not installed or used Team Foundation Server before. Team Foundation Server can support sophisticated environments that include reporting, integration with SharePoint Products, support across multiple domains, distributed databases, etc. I’m not going to cover any of that here. Instead my goal is to help you understand "why Team Foundation Server" and how you can get started using the system.
First let’s talk about "why Team Foundation Server?" The goal of Team Foundation Server is to create a central repository with a set of tools that make it really easy to collaborate between roles. You could try to stitch together multiple disparate systems as follows:
Why Team Foundation Server In this case each system has its own storage, own set of identity for assets, own commands and tools. Getting this going is like trying to hook up a set of custom stereo components: you can pull it off but it’s going to be a lot of work and you are missing out on some stuff.
What I’d rather have is a system which can integrate these items together and then enable my default work flow through the system:
Better integration This integration enables some very common scenarios. In a typical day I’m going to edit source code, build the product, test it, file bugs, fix them, lather/rinse/repeat. When the entire work flow is supported with one integrated repository then all items can be related to each other. As an example when I check in bug fixes I’d really like to see those defects resolved with the change set recorded (see sample below).
The Basic configuration of Team Foundation Server allows you to do precisely this which is a big improvement over just having source control. The full version of Team Foundation Server then adds new features including automated testing, virtual lab deployment, and architectural validation (to name a few). This expands your work flow as follows:
Expanded work flow You can decide which of these new components you add when you use Visual Studio.
There are many ways to access Team Foundation Server. As an engineer your most typical access point will be a version of Visual Studio. But if you are a tester you can use the new Test Manager product (no Visual Studio install necessary). If you are a project manager, you can also use the Web interface, Microsoft Excel, Microsoft Project, or (new for Visual Studio 2010) Microsoft Office SharePoint Server 2007 support for dashboards. More on this later. (For more information, see Role-Based Tasks for Team Foundation Server 2010 - editor's note).
In the rest of this post I will give you some step by step instructions on how to get going with Team Foundation Server using the basic configuration for your first project.
Getting Started
Now that you have the conceptual level it’s time to hook things up. You should start by doing the steps listed in Brian Harry’s Team Foundation Server post here. This will get all the required software on your machine with a default collection, creatively enough called DefaultCollection.
At this point we can connect to the Team Foundation Server collection from Visual Studio. The easiest way to accomplish this is to use the Team Menu (you can also use the link from the home page):
Connect to Team Foundation Server You will be asked to find the Server where Team Foundation Server lives. In this case my Windows 7 machine is called JLZW7. Add the server to the list using the Add button, then click Close:
Add the server At this point you can select the server from the combo box and then the DefaultCollection, then click Connect:
Click connect The Team Explorer tab will now have your server connection and DefaultCollection, but we don’t yet have a Team Foundation Server Project to store anything in yet:
Team Explorer For this tutorial I have created a new Windows Form project to act as our sample solution (File, New Project, Windows Forms). If you try to add this new code project to source control, you will get an error. For example:
Add new Windows Form project After you select the "Add Solution to Source Control" menu item you get the error "No team project source control folders are available.":
No team project source control folders error The error isn’t that intuitive (especially given the word project is used for both Team Foundation Server and inside your Visual Studio code solution but are different things). The error means you must create an actual Team Foundation Server project to contain all of the assets for your work. In Team Explorer, right-click your collection and choose New Team Project:
Create team project In this case I’m going to create a Team Foundation Server project for an Accounts Payable system. This project will contain all of the solutions, data, etc required for the overall system. After entering the data, click Next:
Name the team project The Agile template is the default but you can also select CMMI. You can find more details on MSDN about the project template types. If you are using any agile methodologies (like TDD) this is a fine choice. After making a choice, just click Finish:
Select a process template You will get various status updates as the project is being created:
Stauts update on team project creation After success, click the Close button:
Success creating team project Team Explorer will now have the project ready to hold Work Items, Builds, and Source Control:
New project appears in Team Explorer At this point you can update the project collection. Let’s add the new solution to Team Foundation Server again. Right-click the project in the Solution Explorer and select Add Solution to Source Control:
Add solution to source control At this point you could create a new folder in Team Foundation Server for the solution or just take the default. When you are happy, click the OK button:
Store solution on Team Foundation Server Upon success the Solution Explorer will now show the files are under source control (see the ‘+’ symbol in front of the files):
Solution explorer with newly added solution You will also see the list source control actions taken to publish the solution. Add a comment and then click Check-In:
Check in solution to source control Confirm the check-in by clicking Yes.
Confirm check in At this point your new solution is in Team Foundation Server and ready for Work Items.
Work Items
You can create work items directly inside Visual Studio using the Team Explorer, through the web front end, and the Test Manager tool. To look at your work items, open the Team Explorer and expand Work Items, Team Queries, Iteration 1. You can then double-click any query (such as Active Bugs) to see any items available to you:
Create work items Our Team Foundation Server project is empty so there are no active bugs in the list:
Team project with no active bugs Let’s create a new item just to get us in business. Select the Team, New Work Item menu. Here you can create several types of work items to track features, defects, etc. We’ll select Bug to get going:
New work item menu Enter any data you want for the new bug and click Save Work Item to commit it to the database:
Create a bug work item If you now refresh your active bug query list, you will see the new bug:
Refresh query to see new bug Let’s add a real bug to fix our project. In my example I just created a default Windows Forms application. We’ll want to update the title:
Second bug in new project Now we need to fix the bug. Navigate back to the Solution Explorer, select Form1.cs then choose Check Out for Edit:
Check out file from source control Click the Check Out button to confirm:
Confirm check out The file will now have a check mark next to it so you know it is open for edit:
File checked out of source control As you update the Text property of the main window, Visual Studio will automatically check out any dependent files for you:
Visual Studio checks out additional files This is a Windows Forms application but it works on all solution/project types. Now that we are happy with the code change, select the Pending Changes tab in the bottom of Visual Studio:
Select pending changes In this case we are fixing a bug, so click the Work Items icon button:
Select the work item button Select bug #2 which tracks our title error. We are going to resolve it with this check-in:
Associate bug with check in Add any comments you want and click Check-In, then Yes to confirm:
Add comments to check in
Confirm check in If you refresh bug #2, you will now see the status changed to Resolved and the history is updated:
Associated bug automatically resolved Notice the change set (the set of source control changes) have been automatically included in the history.
Change set added to history At this point you could continue to create and fix bugs as required to ship your solution.
Other Ways to Explore Team Foundation Server
I mentioned that you don’t have to use Visual Studio itself to access the Team Foundation Server repository. We’ve done a lot of deep integration with other clients like the Web and Microsoft Office. As an example, I can simply pull up my web browser and go right to my server by using the server name (where 8080 is the default port): http:// jlzw7:8080/tfs/
Browse to Team Web Access At this point I can explore my collections and projects. If you select the new AccountsPayable project we just created then the Continue button, you get more details. In this case by navigating to the Work Items tab I can find the bugs in the system including our newly resolved bug:
Team project in Team Web Access This is a really easy way to explore your project from any machine with no setup required. There is similar support for using Microsoft Excel, Microsoft Project, etc. This kind of access makes it easy for all people working on your project (engineers and project managers) to work together.
At this point you have a very useful set of assets you can use to get your job done. For those of you using Visual SourceSafe today, you might be very happy with just this level of support. You can put down this tutorial now and come back later if you want to try some advanced features, for example the testing scenario I showed using beta 1 in this tutorial.
Build Support
The next typical part of your work flow will be to automate your builds for the product. Assuming you followed Brian’s installation instructions, you now have local build support on your machine with Team Foundation Server. The first step is to navigate to the Team Explorer, right-click Build Definitions, and select New Build Definition:
Create new build definition This will give us a set of definitions to fill out, just like a code project property page:
Build definition page The Trigger page allows us to decide when builds are kicked off. You have many options to pick from:
  • Manual is the default and the option we will use. We will have to kick off our own builds with this option.
  • Continuous Integration is very helpful when you want to have a new build after every check-in. This allows you to validate new changes right away rather than waiting later when many check-ins get mixed together.
  • Rolling builds give you a way to batch changes together which is very handy when builds are starting to take a while and you can’t afford to do every one.
  • Gated Check-ins allow you to ensure all check-ins build before they are committed to Team Foundation Server. This makes sure you never expose a build break to other members of your team.
  • Scheduled builds are useful for getting a daily build out for the entire team to try out.
You can create and use many different build definitions which allow you to employ different build types for different purposes.
You can explore all the tabs at your leisure (each is fully documented with the product). But we need to resolve the yellow warning sign on Build Defaults by giving the build a place to store our new build, in this case a public UNC I created on my machine:
Add UNC path to buld defaults Now you can save the build definition to Team Foundation Server. If we go back to the Team Explorer we can queue a build of the project:
Queue new build We’ll get a confirmation dialog where we can just select the Queue button:
Queue build prompt This will then queue off a build on my machine as shown by the status page:
Build added to queue If you double-click the queued build you will get the detailed status of the build:
Detailed status of queued build From here you can see warnings and errors, view the log file, navigate to the drop, etc. As an example if you select the "View Log File" link you can see the executed build script (subset):
Build script from log file If you select the Open Drop Folder link you will be taken to our drop location:
Build drop location Now anyone can pick up the build and do their daily testing, release to a customer, etc.
At this point you really have everything you need to make full use of the basic features of Team Foundation Server.
When a team gets started with Visual Studio Application Lifecycle Management (ALM), the administrator sets up the server, the project manager creates a team project, and the other team members set up their working environments. The links in the rest of this topic guide you through the tasks of getting started with Team Foundation Server based on the following software development roles:

Tasks for the Administrator of Team Foundation

  1. If you followed the tutorial earlier in this topic, you installed Team Foundation Server by using the basic configuration. However, you may need to perform different installation tasks, including upgrading a previous installation of Team Foundation Server or performing a custom installation of Team Foundation Server or one of its prerequisites.
    For more information, see this topic on the Microsoft Web site: Installation Guide for Team Foundation.
  2. If you followed the tutorial earlier in this topic, you were automatically granted all the required permissions for project creation during installation of Team Foundation Server. You may want to grant additional users the permissions that they need to act as administrators, project administrators, and other roles.
    For more information, see Configuring Users, Groups, and Permissions.
  3. Create a maintenance plan that will help ensure that your data is backed up in case of a hardware failure or other event. For more information, see Backing up and Restoring Your Deployment.
  4. If any of your teams will use Visual Studio Lab Management, install Microsoft System Center Virtual Machine Manager, configure Lab Management, and create your virtual environments.
    For more information, see Configuring Lab Management for the First Time.
  5. If any of your teams will deploy builds and run tests remotely, install test controllers and test agents on physical or virtual machines.
    For more information, see Setting Up Test Machines to Run Tests or Collect Data.
  6. If you followed the tutorial earlier in this topic, you installed Team Foundation Build by using the basic configuration. However, you may need to perform certain management tasks to get the build environment that you require.
    For more information, see Administering Team Foundation Build.
  7. Review the options for changing or modifying your deployment as your operational needs change. For more information, see Managing the Server Configuration.

Tasks for the Project Manager

  1. Install the client or clients of Team Foundation that you will use.
    For more information, see Installing Visual Studio.
  2. Determine your project resource requirements and the project collection in which you will create a team project.
    For more information, see Quick Start Guide to Launching a Team Project.
  3. Choose a process template.
    For more information, see Choose a Process Template.
  4. In Team Explorer, create a team project.
    For more information, see Create a Team Project.
  5. (Optional) Define the product areas and milestones for your team project.
    For more information, see Create and Modify Areas and Iterations.
  6. Grant team members the permissions that they need to work in the team project.
    For more information, see Add Users to Team Projects.
  7. (Optional) Grant additional permissions to specific team members.
    You or another administrator may need to provide additional permissions to team members who will be responsible for managing the source code under Team Foundation version control, managing builds, managing tests and the lab environment for testing, and other project-level activities. Specific permissions can be assigned to individual team members or groups.
    For more information, see the following sections in Team Foundation Server Permissions:
    • Build-level permissions
    • Project-level permissions
    • Area and iteration-level permissions for work item tracking
    • Version control permissions
    • Lab management permissions
  8. (Optional) Grant report authors additional permissions.
    To create or modify reports that access data that is stored in the data warehouse, team members must have read access to the databases that make up the data warehouse. For more information, see Grant Access to the Databases of the Data Warehouse for Visual Studio ALM
  9. Notify team members of team project resources and enrollment activities.
    For more information, see Notify Team Members of Team Project Resources.
  10. Plan your product.
    If your team project is based on the process template for MSF for Agile Software Development v5.0, you can create your product backlog by using the Product Planning workbook. You can use the Product Planning workbook to manage the backlog of user stories and balance the workload across several iterations, also known as sprints. For more information, see Product Planning Workbook.
    If your team project is based on the process template for MSF for CMMI Process Improvement v5.0, you can use the Product Requirements team query to start to plan your product. You can open this query in Office Excel, add requirements, and then publish them to Team Foundation. You can also use Office Project to plan and schedule your project. For more information, see the following topics:

Tasks for the Version Control and Build Managers

  1. Configure version control.
    For more information, see Administering Team Foundation Version Control.
  2. If you are using Team Foundation Build, create build definitions for each of your team projects.
    For more information, see Building the Application.

Tasks for Individual Team Members

  1. Install the client or clients of Team Foundation that you will use.
    For more information, see Installing Visual Studio.
  2. Set up your workspace for version control.
    For more information, see Create a Workspace to Work with your Team Project and Placing Files under Version Control.
  3. Familiarize yourself with creating, modifying, and finding tasks and other work items.
    For more information, see Getting Started Tracking Work.