Team Foundation Server2006. 2. 28. 00:57

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnvs05/html/TmFndFund.asp 문서의 요약으로, 회사 내부 세미나 용으로 작성한 것이다.


Team Foundation Server Fundamentals: A Look at the Capabilities and Architecture


What Is Team Foundation Server?


기능
Version control: 소스코드와 다른 버전 컨트롤이 필요한 산출물
Work item tracking: 버그, 요구사항, 작업, 시나리오 등의 추적이 필요한 아이템들
Project management functions: 소프트웨어 프로세스에 기반한 팀 프로젝트의 형성과 엑셀, 프로젝트를 사용한 계획/추적을 가능하게 한다.
Team build: 빌드를 위한 공통적인 프로세스를 가능하게 한다.
Data collection and reporting: 팀 파운데이션 서버에서 모아진 정보를 기반으로 해서 현재 프로젝트의 상태를 평가할 수 있게 해준다
The Team Project Portal; 셰어포인트 서비스를 이용해서 팀 커뮤니케이션의 중심을 제공한다.
Team Foundation Shared Services: 공통적인 기반구조 서비스를 제공해서 확장가능하고, 이 서비스들에 기반한 도구를 만들 수 있게 해준다.


The Shape of Team Foundation






Elements of Team Foundation Server
Project Management
 
  작업 항목 Tracking 기능을 통해서 프로젝트의 진행 상황과 위험도 등을 알 수 있다.
프로젝트 템플릿 기능을 통해서, 프로젝트 프로세스를 환경에 적합하게 맞출 수 있다.
디폴트 프로세스 템플릿 (MSF For Agile / MSF For CMMI)
이 템플릿은 확장/변형 가능해서 프로젝트나 환경에 맞게 고칠 수 있다.

Version Control
 
  SQL 서버를 사용
check-in, check-out, version management, and diff/merge
Shelving (보류) 등의 새로운 기능을 추가
체크인 정책(테스트, 코드 리뷰 등)
Work Item Tracking

버그, 요구사항, 시나리오, 작업 등의 모니터링이 필요한 항목들을 저장/관리할 수 있다. (작업 항목의 유형, 그에 따른 추가적인 필드등은 확장 가능하다)
Visual Studio IDE, 엑셀, 프로젝트 등에서 작업이 가능

Team Build

빌드를 수행하는 간단한 방식을 제공
테스트, 코드 리뷰, 작업 항목 업데이트 등의 기능을 빌드와 동시에 수행 가능
“빌드 서버” 기능을 지원
각 빌드의 로그(진행상황, 결과)등을 기록한다. 이 결과는 SQL에서 분석되어서 리포트된다.
Data Collection and Reporting
  모든 데이터는 SQL 에 저장
각 데이터는 DataWarehouse로 모여져서 분석된다.(SQL Analysis Service)
SQL Reporting Service를 통해서 리포트 형태로 출력될 수 있다.

The Project Portal

프로젝트 커뮤니케이션의 포탈로 이용할 수 있다.
문서 라이브러리 기능
프로젝트 템플릿에 따른 문서 샘플이 제공된다.

Shared Services

  모든 서비스는 확장 가능하도록 설계되었으며, Custom 툴을 만들어서 사용할 수 있다.

Architected for Extensibility


Linking service

  데이터 요소들 간의 느슨한 결합 관계를 연결시키는데 쓸 수 있다.
예를 들면, 버그와 그 버그를 해결하기 위해 수정한 소스 코드를 연결하는 데 쓸 수 있다.

Security service

팀 파운데이션 서버 보안 관련 API를 제공한다.
IT 서비스 팀이 팀 파운데이션 서버의 보안을 조정할 수 있는 툴을 만들 수도 있고, 다른 툴들에서 권한 부여용 API로도 사용할 수 있다.

Eventing service

웹 서비스 기반의 publish/subscribe 구조이다.
구독자는 특정 이벤트가 일어났을 때, 알림을 받을 수 있다. 이 구독자는  이메일 주소일 수도 있고, 웹 서비스일 수도 있다
Classification service

Linking service와 결합해서, 팀 파운데이션 서버 산출물들을 분류하는데 쓰인다.
예를 들어, 테스트는 모듈 단위로 분류되지만, 이 분류 서비스를 사용해서 팀 단위로도 분류할 수 있다.

Registration service
  새로운 도구가 추가되었을 때, 그 도구의 산출물 유형이나 이벤트 스키마 등등은 registration service 를 통해서 등록된다.

그 외 기능

VSIP (Visual Studio Industry Partner Program) 패키지를 통해서 Visual Studio IDE에 통합시키거나, 혹은 별도의 닷넷 프로그램을 만들 수도 있다.
새로운 툴과 관련된 도구들을 프로젝트 생성 마법사에 추가시킬 수도 있다.
새로운 툴과 데이터를 팀 익스플로러의 트리 노드에 추가시킬 수도 있다.
데이터 웨어하우스 스키마를 확장시켜서, 새로운 툴과 관련한 데이터만을 가져올 수도 있다.
Posted by kkongchi