Chủ đề
- Tìm hiểu mục đích, nội
dung và cấu trúc của các quy trình mẫu process templates.
- Nghiên cứu sự khác nhau
chính giữa hai quy trình mẫu Microsoft® Solution Framework (MSF) for Agile Software Development
(MSF Agile) và MSF for CMMI® Process Improvements (MSF CMMI) process templates.
- Tùy chỉnh các
process template để đáp ứng nhu cầu cụ thể của nhóm bạn.
Xem trước
Chương này giải thích vai trò của các process template trong
Microsoft Visual Studio® 2005 Team Foundation Server (TFS). Nó xác định các chức
năng chính và sự khác nhau chính giữa hai process templates được cung cấp: MSF
Agile và MSF CMMI.
Các quy trình phát triển phần mềm thường phức tạp, liên quan đến nhiều mức độ của các hoạt động phụ thuộc
lẫn nhau. Những quy trình này nói chung là có sẵn cho các nhóm phát triển trong
các dạng tài liệu nhưng thường không có
các tool để thực hiện. Việc không hỗ trợ của các tool này gây khó khăn cho các nhóm
phát triển để tìm hiểu và làm theo các quy trình một cách nhất quán. Các project
manager có thể sử dụng nhiều tool khác nhau cho việc quản lý project, quản lý các yêu cầu, bug tracking(theo dõi các lỗi), hay
review management nhưng chúng thường không được tích hợp tốt. Thiếu sự thống nhất
này gây khó khăn hơn trong việc thực thi
một phương pháp phù hợp giữa các project và tạo ra các report thích hợp để thúc đẩy hiểu
biết đồng bộ trong toàn đội nhóm về tiến độ và tình hình dự án. Thiếu sự nhất
quán này có thể dẫn đến kết quả là quá trình phân tích thiếu độ tin cậy, khó khăn hơn trong việc xác định và thực thi việc cải tiến nâng cấp các quy trình theo thời
gian.
Visual Studio Team System (VSTS) và TFS cung cấp một môi trường
tích hợp để hỗ trợ hầu hết các quy trình hoạt động có liên quan đến một dự án
phát triển phần mềm. TFS thực thi cơ chế phát triển vòng đời phần mềm qua cách sử dụng các process templates. Một process template là một tập
các tập tin Extensible Markup Language
(XML) cung cấp các chi tiết kĩ thuật cho các quy trình và các phần tạo nên một
cơ chế phương pháp phát triển phần mềm. Chương này giải thích kiến
trúc của một process template và các thành phần của nó để bạn hiểu
hơn về cách thức làm sao để sử dụng và tùy chỉnh các process template được cung
cấp.
Nếu các process template đã có không phù hợp với quy trình
phát triển của nhóm bạn, thì bạn có thể tạo một process template mới, chỉnh sửa
các template có sẵn, hoặc chọn từ các process templates được cung cấp bởi
Microsoft Partners. Để xem các process templates được cung cấp bởi Microsoft
Partners, hãy xem: http://msdn2.microsoft.com/en-us/teamsystem/aa718801
Sử dụng chương này như thế nào
Sử dụng chương này để tìm hiểu kiến trúc process template , cấu
trúc, và tùy chỉnh các quy trình đó. Để có được lợi ích tốt nhất từ chương này,
bạn nên:
- Đọc phần "MSF Agile and MSF CMMI Process Templates". Để tìm hiểu về
các process template mặc định và bằng cách nào để chọn template phù hợp nhất
với các yêu cầu của nhóm bạn.
- Đọc phần "Customizing Process Guidance". Để
tìm hiểu cách thức tùy chỉnh các process template đã có để phù hợp với nhu cầu của nhóm bạn hơn.
MSF Agile và MSF CMMI Process Templates
Team Foundation Server đi kèm với hai process template: MSF
Agile và MSF CMMI. Hai process templates này hướng vào hai phong cách khác
nhau của việc phát triển phần mềm. Bạn nên sử dụng MSF Agile nếu bạn đang triển khai
một phương pháp thiết kế phần mềm nhanh chóng. MSF
Agile khuyến khích kiểm thử test-driven development và các thực hành nhanh nhẹn khác. Bạn nên
sử dụng MSF CMMI nếu bạn đang theo đuổi phương pháp Software Engineering
Institute (SEI) Capability Maturity Model® Integration. Đây là một quy trình chính
thức nhằm cải thiện các quy trình phát triển đã có.
Các template khác nhau trong những gì mà chúng được cung cấp.
Thí dụ, chúng tạo ra các loại report mặc định và các loại work item khác nhau. Những
template có thể dễ dàng được chỉnh sửa cho phù hợp với các nhu cầu của project
của bạn.
Hướng dẫn tùy chỉnh các Quy trình
Project mà bạn đang tạo có thể không phù hợp với các process
template được cung cấp với VSTS. Bạn có thể cần một loại work item khác hay bạn
đang sử dụng một phương pháp quy trình hoàn toàn khác. Thí dụ, nếu bạn đang sử dụng
SCRUM không đề cập đến các sprint trong các process template hiện có. Trong trường
hợp này bạn cần sửa đổi hoặc thay thế các process template đã có cho phù hợp với
phương pháp luận mà nhóm bạn sử dụng.
Kiến trúc Process
Template
Có ba phần quan trọng trong kiến trúc của process template:
• Process template plug-ins
• XML process definition files
• New Team Project Wizard
Process Template Plug-ins
Các process template plug-in
là các thành phần mà chạy khi một team project mới được tạo. Một plug-in thiết lập
các tập tin cần thiết và cấu hình dữ liệu cho một area cụ thể của template. Các plug-in sau thì có sẵn trong TFS.
- Classification
- Xác định các
iteration và area ban đầu của team project.
- Groups
and Permissions - Xác định các security group và các permission ban đầu của teamp project.
- Windows
SharePoint Services - Xác định project portal cho team dựa trên một trang Microsoft
Windows SharePoint® site template. Nó cũng định nghĩa các template file và hướng dẫn quy trình.
- Work
Item Tracking - Xác định các loại work item,
query, và work item instance ban đầu của team project.
- Reports
- Xác định các report và thiết lập các trang report ban đầu của dự án nhóm.
- Version
Control -Xác định các version control security
permission, và các check-in note ban đầu của dự án nhóm.
Bạn có thể chỉnh sửa từng tập tin định nghĩa các plug-in để tùy chỉnh một process template. Ngoại trừ các classification plug-in, bạn cũng có thể xóa các tập tin định nghĩa các plug-in để tùy chỉnh một process template.
Các tập tin XML xác định các quy trình
Các tập tin XML xác định các quy trình là một tập các tập tin XML xác định
một tập các task cần được chạy để cấu hình chính xác một team
project mới cho process. Khi bạn sử dụng New Team Project Wizard để tạo một
team project, nó chạy yêu cầu các plug-in. Mỗi plug-in đọc các tập tin XML xác định các quy trình tương ứng của nó để
thu được danh sách các task mà nó phải chạy. Bằng cách sử dụng các các tập tin XML xác định các quy trình, bạn xác định rõ các cấu
hình và cài đặt gì mà các plug-in phải thực thi. Sau đây là các chi tiết về các
tập tin XML:
- Work
Item Tracking XML - Tập tin xác định quy trình này có tên là Workitems.xml và
được đặt trong thư mục Work Item Tracking trong hệ phân cấp thư mục process template. Có ba loại quan trọng của các task cần chỉ rõ: work item types, work
item queries, và work item instances.
o
Work
Item Types - Xác định các rules, fields, states, và transitions cho
một phần của công việc mà sẽ được theo dõi trên một team project như là các
task, bug, và các requirements.
o Work Item Queries - Được
sử dụng để tìm kiếm các group cụ thể của các work item, như là các task hay các
active bug. Các work item query được xác định trong các tập tin work item query (WIQ)
trong thư mục Queries bên dưới thư mục Work Item Tracking trong hệ phân cấp các thư mục process
template.
o Work Item Instances - Tập ban đầu các work item
instances được tạo mặc định khi bạn tạo team project.
- Classification
XML - Tập tin xác định quy trình này có tên là Classification.xml và được đặt
trong thư mục Classification trong hệ phân cấp các thư mục process
template. Nó bao gồm
có hai phần: Iterations và Areas.
o Iterations - Được sử dụng để xác định số lần
mà team sẽ repeat một tập đặc biệt các hoạt động chính (như là plan, develop,
test). Iterations ảnh hưởng đến work item query và report bởi vì iterations được
sử dụng để nhóm các work items.
o Areas - Được sử dụng để tổ chức công việc
trong team project. Thí dụ, một team có thể tổ chức công việc dựa trên sản phẩm
hay chức năng, như là UI area, Application area, và Database area. Areas được sử dụng để nhóm các work
items cho các query và các report.
- Windows
SharePoint Services XML - Tập tin định nghĩa quy trình có tên là WssTasks.xml và
được đặt trong thư mục Windows SharePoint Services trong hệ phân cấp các thư mục process
template. Có ba task quan trọng để xác định rõ: Site Template (site template nào
để sử dụng), Document Libraries (document libraries nào để tạo), và Folders và
Files ( folders và files nào để copy vào document libraries).
o Site Template - Bạn phải xác định một
site template mà các project portal được dựa vào đó. Site template này cũng phải
có sẵn trên TFS SharePoint Portal. Site templates không bao gồm trong process template.
o Document
Libraries - Sau khi project portal được tạo, bạn có thể xác định các document libraries bổ sung được tạo.
o Folders and Files - Sau khi project
portal được tạo, bạn có thể chỉ rõ thư mục bổ sung để tạo. Bạn cũng có thể
xác định các file để copy như là các template file.
- Version
Control XML - Process definition file có tên là VersionControl.xml và được đặt trong Version Control folder trong
process template folder hierarchy. Nó xác định một team project's initial
version control security permissions, check-in notes, và whether exclusive
check-out là bắt buộc.
o Check-in Notes - Xác định xem có các check-in notes hay không.
Check-in notes được cung cấp bởi nhà lập trình khi code được check in để mô tả nó
như thế nào, hay nếu, code changes liên quan đến các team process. Thí dụ, một
check-in note có thể cho biết nếu change là một phần của security review, và có
thể cho biết bao gồm các chi tiết về các change liên quan đến security review.
o Exclusive
Check-out - Được sử dụng để điều khiển xem có thể có nhiều user có thể check out một
file tại cùng một thời điểm hay không.
o Permissions - Xác định các actions
security group và các individual có thể thực hiện trên các item bên dưới các
version control.
- Reports
XML - Tập tin định nghĩa quy trình này có tên là ReportsTasks.xml và được đặt
trong thư mục Reports trong hệ phân cấp các thư mục process
template. Nó xác định các report
ban đầu của dự án nhóm.
o Reports Site - Trang report có một
liên kết đến nó, labeled Reports, trên project portal home page.
o Folders - Bạn có thể tạo cácthư mục
trên trang report. Các thư mục bạn tạo sẽ xuất hiện trên trang project site và ở bên
dưới thư mục Reports trong Team Explorer.
o Reports - Được sử dụng để thêm các
report bằng cách sử dụng các .rdl file.
- Groups
and Permissions XML - Tập tin định nghĩa quy trình này có tên là GroupsandPermissions.xml và được đặt
trong thư mục Groups and Permissions trong hệ phân cấp các thư mục process
template. Dùng
để xác định các security groups ban đầu của dự án nhóm.
o Groups - Được sử dụng để xác định một
TFS security group mới.
o Permissions - Được sử dụng để xác định
các permission cho mỗi group bạn chỉ rõ.
New Team Project Wizard
Bạn sử dụng New Team Project Wizard để tạo mới các
team project. Wizard sử dụng các plug-in và các tập tin XML xác định quy trình để tạo
project.
Phương pháp tùy chỉnh
Để tùy chỉnh một process
template, hãy thực hiện các bước sau:
1. Xem lại các process template được TFS cung cấp
và chọn một cái phù hợp nhất với process
nhóm bạn tổ chức.
2. Download phần process template đã chọn.
3. Tùy chỉnh các thành phần khác nhau của
process template.
4. Upload các template đã tùy chỉnh lên TFS.
5. Xác định rõ các thay đổi phù hợp với các yêu
cầu quy trình của nhóm bạn.
Bản chất cách tiếp cận này
được sử dụng như một phần của các solution sau đối với việc tùy chỉnh các
process template:
- Manually
customize the XML files. Tùy chỉnh bằng
tay rất dễ bị lỗi nhưng vẫn cho phép bạn
dễ dàng kiểm soát dựa trên việc tùy chỉnh các quy trình mẫu.
Để có thêm thông tin, hãy xem "Customizing Process Templates" tại http://msdn2.microsoft.com/en-us/library/ms243782(VS.80).aspx
- Process
Template Editor Tool available with Power tools. Version mới nhất của Visual
Studio 2005 Team Foundation Server Power Tool - một tập các enhancements(cải tiến),
tools, và các tiện ích command-line utilities sẽ nâng cao kinh nghiệm về TFS - cung cấp một công cụ đồ họa để xem xét và chỉnh sửa các process templates. Khi
kết nối đến TFS, bạn có thể sử dụng tool này để điều chỉnh cácdanh sách định nghĩa các work item và danh sách global lists trên một project hoạt động. Để có thêm thông tin, hãy
xem "Làm thế nào: Tùy chỉnh một Process Template trong Visual Studio Team
Foundation Server"
Các tùy chỉnh thông thường
Sau đây là những miêu tả về
các thành phần mà bạn sẽ thường tùy chỉnh để tạo ra quy trình cho riêng mình:
- Groups
and Permissions. Các process templates có một tập các group với các permission
khác nhau được phân cho chúng. Nếu các
group và permission mặc định liên kết với
những template này không được đầy đủ hay
phù hợp với các yêu cầu của quy trình của bạn, bạn có thể update các group này
hay tạo các group mới. Bạn cũng có thể thêm các individual user cho một group,
remove các user từ một group, hay cấp hoặc thu hồi các permissions cho một group.
- Source
Control Check-In Notes and Policies. Process templates có một tập các Source Control Check-In notes và Policies. Nếu
các check-in notes mặc định không đáp ứng đầy đủ hay phù hợp với các process
requirement của bạn, bạn có thể thêm hay remove các check-in note fields, hay tạo
ra một số các fields required và những cái khác thì không. Nếu các check-in
policies mặc định không đáp ứng đầy đủ hay phù hợp, bạn có thể add, update, hay
delete individual check-in policies.
- Areas
and Iterations. Process templates không
cung cấp một phân loại cấu trúc cho cả các area hay iteration. Bạn có thể tùy
chỉnh các area và iteration tùy theo các process requirement cụ thể của bạn. Phương
pháp được đề nghị là để phân chia ra các area dựa trên các thành phần hay các
chức năng của project. Các Iteration có thể dựa trên các chu kì thời gian cơ bản
mà bạn sẽ lặp lại đặc biệt là tập các hoạt
động chính (như là plan, develop, và test).
- Team
Portal. Các process templates cung cấp một tập các team portal mặc định, mà
có thể là central hub cho sự giao tiếp giữa các team member và các thành viên
khác trong tổ chức. Bạn có thể chỉnh sửa team portal để thay đổi sự xuất hiện của
nó, cách thức hoạt động và nội dung cho phù hợp với các yêu cầu về quy trình của bạn.
- Process
Guidance. Các process templates cung cấp sách hướng dẫn quy trình liên quan
để giải thích về các roles, forms, reports, và workflow được sử dụng trong team
project. Khi tùy chỉnh các process template để đáp ứng các yêu cầu đòi hỏi, bạn
phải chỉnh sửa process guidance để đối chiếu các thay đổi cho các thành phần
khác nhau.
- Reports.
Các process templates cung cấp một tập các report mặc định. Nếu các report mặc
định không phù hợp hay không đầy đủ, bạn có thể tạo các report cho riêng bạn dựa
trên các yêu cầu của bạn.
- Work
Item Types and Queries. Các process templates có một tập các Work item
types, các work item instances và queries mặc định. Nếu các Work item types,
work item instances và queries mặc định không đáp ứng đầy đủ hay không phù hợp
với các yêu cầu về quy trình của bạn, bạn có thể tùy chỉnh các work item types cho
phù hợp với các workflow hay các loại khác của các work item của bạn mà bạn muốn
theo dõi. Thí dụ, bạn có thể:
o Thêm mới các work item types.
o Remove các work item types đã có.
o Thêm các work item type instances mặc định.
o Remove các work item type instances mặc định.
o Tạo các public hay private queries cho riêng
bạn.
Bạn cũng có thể chỉnh sửa một
work item type đã có; thí dụ:
o Add các field.
o Rename các field.
o Hạn chế danh sách các value của các field cho
phép.
o Thay đổi các state và hỗ trợ các state
transitions.
o Tạo các field được yêu cầu hay read-only.
o Tạo một field phụ thuộc vào một cái khác.
o Tự động populate các field value.
o Sắp xếp lại sự xuất hiện của các thông tin
trên form.
o Thay đổi Microsoft Office Project column mà một
certain field được map.
Các quá trình tùy chỉnh làm việc như thế nào?
Tùy chỉnh một process
template bao gồm các bước sau:
1. Người sử dụng khởi chạy New Team Project Wizard.
2. Và wizard yêu cầu:
o Tên của team project.
o Process template được sử dụng khi tạo một
team project.
Các screen được hiển thị
trong wizard được xác định bởi các plug-in được sử dụng. Thí dụ, nếu một process
template không bao gồm Windows SharePoint Services plug-in, không có screen hiển
thị để hỏi thông tin về project portal.
3. Sau khi user cung cấp thông tin cho các wizard
request và click Finish, wizard sẽ thực hiện gọi đến các plug-in để thực thi
công việc khởi tạo team project. Thứ tự của các plug-in được gọi được xác định
bởi các tập tin XML định nghĩa các quy trình.
4. Trình wizard đọc các hướng dẫn được chứa
trong process template và sau đó khởi tạo và cấu hình các item cụ thể. Người sử
dụng không cần phải xác định bất cứ chi tiết nào về các loại work item khác
nhau để tạo vì các hướng dẫn đã được cung cấp bởi các process template.
Lưu ý:
Nếu trình wizard gặp phải một vấn đề trong khi tạo mới một team project, bạn sẽ
thấy một tin nhắn thông báo lỗi miêu tả về vấn đề và đề nghị các hành động để sửa
sai.
Tổng kết
Sử dụng MSF Agile process
template nếu bạn đang triển khai một phương pháp nhanh chóng để build phần mềm
của bạn. Sử dụng MSF CMMI nếu bạn đang theo phương pháp Software Engineering
Institute (SEI) Capability Maturity Model Integration.
Những thành phần quan trọng
nhất của kiến trúc process template là các process template plug-ins, XML
process definition files, và New Team Project wizard.
Nếu các process template mặc
định không thỏa mãn các yêu cầu quy trình của bạn, bạn có thể tùy chỉnh các template
bằng cách chỉnh sửa bằng tay các tập tin XML process definition, hay bạn có thể
sử dụng công cụ Process Editor Tool để chỉnh sửa
các process template.
Phần area phổ biến nhất của sự tùy chỉnh là các group
và các permission, source control check-in notes và policy, areas và iteration,
reports, và work item type definitions.
Tài nguyên bổ sung