Chủ đề
-
Miêu tả kiến trúc Microsoft® Visual Studio® Team Foundation Server (TFS)
reporting .
-
Xác định các thành phần tạo nên TFS reporting.
-
Miêu tả mục đích của từng report có sẵn.
-
Tìm hiểu process template nào chứa đựng report nào.
-
Tùy chỉnh và tạo mới các report.
Xem trước
Chương này miêu tả kiến trúc của
TFS reporting và các report thông thường mà bạn có thể sử dụng với các team
project mới. Còn kết nối các kịch bản báo cáo chung với các kịch bản có sẵn
trong TFS, và miêu tả các nguyên nhân chung nhất dẫn đến việc tùy chỉnh các
report đã có hay tạo mới các report. TFS reporting cho phép bạn xem dữ liệu tổng
hợp trên nhiều khía cạnh của team project của bạn. Bạn có thể sử dụng thông tin
này để phân tích tiến độ dự án, tình trạng project , và hiệu suất làm việc của
những đội ngũ phát triển và kiểm thử của bạn.
TFS reporting sử dụng Microsoft SQL
ServerTM 2005 Reporting Services để tạo, quản lý và chạy các reports. Mỗi process
template chứa một tập các report chưa xác định trước(predefined reports) được triển khai đến thư mục report của dự án khi
mà dự án được tạo. Bằng cách sử dụng Reporting Services bạn cũng có thể sửa đổi
các report này và tạo các report tùy ý cho project của bạn. Bạn có thể thêm mới
các report cho một process template đã có để dự trữ sẵn cho các team project
khác.
Sử dụng chương này như thế nào
Sử dụng chương này để tìm hiểu TFS
reporting làm việc như thế nào và bằng cách nào mà nó có thể giúp bạn đánh giá
tình trạng và chất lượng của project. Để có được lợi ích tốt nhất từ chương
này, bạn nên:
-
Đọc phần "Scenarios and
Solutions". Tìm hiểu những nguyên nhân thông thường để sử dụng TFS
reporting và nghiên cứu mục đích của từng chuẩn report.
-
Đọc phần "Physical Architecture"
. Nghiên cứu thành phần nào tạo nên reporting system và chúng tương tác với
nhau như thế nào
-
Đọc phần "Customizing Reports" .
Nghiên cứu cơ chế sẵn có cho sự tùy chỉnh và khởi tạo report.
-
Đọc chủ đề Làm thế nào kèm theo.
Đọc các chủ đề Làm thế nào được đi kèm sau đây để để đi qua từng bước các thảo
luận trong chương này.
o Làm thế nào - Tùy chỉnh một Report với Visual
Studio 2005 Team Foundation Server"
o Làm thế nào - Tạo một Custom Report trong Visual
Studio 2005 Team Foundation Server
o Làm thế nào - Tạo một Risk Over Time Report với Visual Studio 2005 Team Foundation Server
Tình huống và giải pháp
Report là phương pháp chính để các
project manager và các team leader theo sát một project đang được triển khai. Sau
khi bạn tạo mới một team project, một tập các report được khởi tạo cho bạn dựa
trên mẫu quy trình mà bạn chọn. Những report này có sẵn cho bạn từ các project's
Microsoft Office SharePoint® portal site hay từ các report node trong Team
Explorer ở bên trong Visual Studio.
Sau đây là những câu hỏi phổ biến
khi sử dụng TFS reports có thể trả lời được:
-
Khi nào ứng dụng của tôi sẵn sàng được vận chuyển?
-
Có phải tiến hành công việc theo kế hoạch?
-
Chất lượng của build là gì?
-
Tình trạng phát triển tùy vào việc xác định các tình huống, kịch bản định
trước là gì?
• Làm
thế nào hoàn thành công việc phát triển một cách nhanh chóng?
-
Có phải các lỗi cố định không?
-
Có phải là các bug đang được giảm bớt?
Team Foundation Server Reports
Cả hai Microsoft Solution Framework
(MSF) for Agile Software Development (MSF Agile) và MSF for CMMI® Process
Improvement (MSF CMMI) process templates thì mỗi bên đều có một tập các report
mặc định có sẵn.
Bugs
Các bug liên quan đến các report
trong các quy trình mẫu cho phép bạn nhìn thấy loại nào của các bug đã đang được tạo và sữa
chữa và để xác định các xu hướng. Sau đây là các bug liên quan đến các report có
sẵn:
-
Bugs by Priority. Là các
correct bug sẽ được tìm thấy? Report này hiển thị cho bạn tỉ lệ của các
high-priority bugs(lỗi có độ ưu tiên cao) được tìm thấy so với các low priority
bugs(lỗi có độ ưu tiên thấp). Report này có sẵn trong cả hai quy trình mẫu được
cung cấp.
-
Bug Rates. Làm cách nào mà
các bug đang được tìm kiếm, sữa chữa và kết thúc nó một cách hiệu quả?Report này
chỉ ra các xu hướng theo thời gian của các lỗi mới(new bug), bug backlogs(lỗi về
truyền tải thông tin), và bug resolution(lỗi về độ phân giải màn hình). Report này
có sẵn trong cả hai quy trình mẫu được cung cấp.
Release Management
Release management report(Các báo
cáo quản lý các phiên bản phát hành) cho phép bạn xem xét phần mềm của bạn sẽ kết
thúc một cách phù hợp như thế nào để phát hành. Sau đây là các release
management reports có sẵn:
-
Actual Quality versus Planned
Velocity. Có bao nhiêu kịch bản được hoàn thành trước khi chất lượng không
được chấp nhận? Report này trình bày các mối quan hệ của từng iteration, của
kích cỡ ước lượng về chất lượng tổng thể. Report này có sẵn trong cả hai quy
trình mẫu được cung cấp.
-
Builds. Quality of build là
gì? Report này cung cấp một danh sách các build có sẵn bao gồm build quality và
các thông tin chi tiết khác. Report này có sẵn trong MSF for CMMI Process Improvement.
-
Quality Indicators. Chất lượng
phần mềm là gì? Report này tống kết các kết quả kiểm thử, các lỗi, code
coverage và code churn vào một single report để theo dõi project health. Report
này có sẵn trong MSF Agile và MSF CMMI.
-
Velocity. Làm thế nào nhóm có
thể nhanh chóng hoàn thành công việc? Report này trình bày bằng cách nào mà
nhóm có thể hoàn thành kế hoạch công việc và chỉ ra tỉ lệ thay đổi từ ngày này
sang ngày khác. Report này có sẵn trong MSF Agile và MSF CMMI.
- Scenario
Details. Chúng ta thiết kế ứng dụng dựa trên kịch bản nào? Report này cung
cấp thông tin trên mỗi kịch bản bao gồm completion status(tình trạng hoàn
thành), risks(các rủi ro) và testing progress(tiến độ kiểm thử). Report này có
sẵn trong MSF CMMI.
Testing
Kiểm thử reports cho phép bạn giám sát hiệu quả và tiến
độ của các kiểm thử của bạn. Sau đây là các kiểm thử report(test report) có sẵn:
- Regressions. Những kiểm thử nào đã qua
được một mốc nhưng bây giờ lại thất bại?Report này trình bày một danh sách tất
cả các kiểm thử đã thành công trước đó nhưng bây giờ thất bại. Report này có sẵn
trong MSF CMMI.
- Requirements Test History. Kiểm thử tốt
như thế nào cho các kịch bản và các yêu cầu của tôi?Report này trình bày tiến độ
kiểm thử dựa vào việc xác định các kịch bản và các yêu cầu. Report này có sẵn
trongg MSF CMMI.
- Test Failure Without Active Bug. Có phải
có các lỗi để theo dõi các khuyết tật? Report này trình bày bất cứ kiểm thử nào
đã thất bại và không được liên kết với một open bug. Report này có sẵn trong
MSF CMMI.
- Test Passing With Open Bug. Có phải
danh sách lỗi(bug list) được cập nhật liên tục và nhất quán với chất lượng của ứng
dụng? Report này trình bày các lỗi cũ mà các kiểm thử bây giờ đang được kiểm thử
là vượt qua. Report này có sẵn trong MSF CMMI.
- Load Test Tổng Kết. Kết quả của việc
load các kiểm thử trên việc thi hành ứng dụng là gì?Report này trình các kết quả
kiểm thử cho việc load các kiểm thử trên ứng dụng của bạn.Report này có sẵn
trong MSF Agile.
Work Items
Work item reports cho phép bạn đánh giá tình trạng hiện
tại của dự án và của tiến độ hiện tại của dự án của bạn. Sau đây là các work
item reports có sẵn:
- Open Issues and Blocked Work Items Trend.
Còn bao nhiêu open issues? Report này trình bày các open issues còn tồn tại
cũng như là xu hướng để giải quyết chúng. Report này có sẵn trong MSF CMMI.
- Reactivations. Có bao nhiêu work items đang
được tái kích hoạt? Report này trình bày các work items đã được giải quyết hay
kết thúc sớm. Report này có sẵn trong MSF Agile and MSF CMMI.
- Related Work Items. Các work item này
phụ thuộc vào các work items khác là gì? Report này trình bày một danh sách các
work item liên kết với các work item khác để bạn theo dõi các sự phụ thuộc(dependency).
Report này có sẵn trong MSF CMMI.
- Remaining Work. Có bao nhiêu công việc
vẫn còn đang làm và khi nào kết thúc công việc ấy?Report này trình bày các công
việc còn lại , được giải quyết và kết thúc theo thời gian. Lên kế hoạch trước các công việc còn lại cho
phép bạn dự đoán thời điểm mà bạn sẽ hoàn thành code của bạn. Report này có sẵn
trong MSF Agile và MSF CMMI.
- Triage. Các work item nào cần được chọn
để thực hiện theo kế hoạch(triage)? Report
này trình bày tất cả các work item vẫn đang ở trong tình trạng đề xuất. Report này
có sẵn trong MSF CMMI.
- Unplanned Work. Có bao nhiêu công việc
không được dự tính trước? Report này lập
biểu đồ tổng các công việc so với các công việc còn lại và phân biệt các công
việc có kế hoạch từ các công việc không có kế hoạch. Report này có sẵn trong
MSF Agile và MSF CMMI.
- Work Items. Các active work items là gì?
Report này liệt kê tất cả các active work item. Report này có sẵn trong MSF
CMMI.
- Work Items by Owner. Có bao nhiêu công
việc được phân chia cho từng thành viên của nhóm? Report này trình bày các work
item trên mỗi thành viên của nhóm. Report này có sẵn trong MSF CMMI.
- Work Items by State. Có bao nhiêu
active, resolved và closed work items ở đây? Report này liệt kê các work items được
tổ chức bởi các state. Report này có sẵn trong MSF CMMI.
Tùy chỉnh
các Report
Bạn có thể cần một report mà không có trong các MSF
process templates. Thì bạn có thể tùy chỉnh các reports bằng một trong ba cách
sau đây:
- Use a filter on an existing report. Rất
nhiều report cung cấp các tham số mà bạn có thể sử dụng để lọc các report. Thí
dụ date, area, iteration, và các priority filters(lọc ưu tiên) có sẵn. Sử dụng
những filter(bộ lọc) này để xem lại một tập hợp các data được cung cấp
trong report. Hãy lưu ý là những filter
này chỉ có tính chất tạm thời và sẽ bị mất đi khi bạn không duyệt các report nữa.
- Customize an existing report. Nếu một
report bạn muốn tương tự như một report đã có, thường thì dễ nhất là copy
report đã có và sau đó chỉnh sửa nó. Thí dụ, bạn có thể muốn phân chia các rủi
ro theo thời gian để phân tích nhóm của bạn đang làm việc với các rủi ro dự án
tốt như thế nào.
- Create a new report. Bạn có thể tạo mới
một report từ đầu.
Nếu bạn chỉnh sửa một report đã có hay tạo mới một
report từ đầu, bạn có thể khai báo công khai nó trên Report Server để nó có thể
được áp dụng sẵn sàng cho phần còn lại của nhóm bạn. Nếu bạn muốn chỉnh sửa một
report đã có hay tạo mới một report, bạn có thể sử dụng một trong các cách sau:
- Sử dụng
Microsoft Office Excel® để tạo các pivot tables từ dữ liệu trong reporting
databases.
- Tạo mới một
Report Server project trong Visual Studio và sau đó tạo mới các report hay import
các report đã có. Tạo một Report Server project trong Visual Studio là phương
pháp mạnh nhất và linh hoạt để tạo và chỉnh sửa các report.
Lưu
ý: Có thể sử dụng Report Builder, hoạc từ các team
reporting site; tuy nhiên công cụ này không hỗ trợ tốt cho các Visual Studio
reporting scenarios và không được khuyến khích.
Thông tin bổ sung
- Để có thêm thông tin về việc chỉnh sửa các report
đã có, hãy xem "How To: Customize a Report with Visual Studio Team Foundation
Server."
- Để có thêm thông tin về việc tạo một custom
report, hãy xem "How To: Create a Custom Report in Visual Studio Team
Foundation Server."
- Hướng dẫn từng bước để tạo một Risk over Time
report, hãy xem "How To: Create a Risk over Time Report with Visual Studio Team
Foundation Server."
Kiến trúc vật lý
Team
Foundation Server được build trên SQL Server 2005 và sử dụng SQL Server
Analysis Services để tổng hợp dữ liệu và điều khiển các report. Bạn có thể tạo
mới các report bằng cách sử dụng Microsoft Excel hay Visual Studio 2005 Report
Designer. Các report được lưu trữ trên SQL Server 2005 Reporting Services và có
thể được xem từ report server Web site, team SharePoint project portal và từ
Reports node trong Team Explorer. Hình 15.1 hiển thị kiến trúc vật lý của
report.

Hình
15.1 Physical Reporting Architecture
Mỗi
thành phần TFS duy trì tập các transaction databases cho riêng mình. Bao gồm có
các work items, source control, tests, bugs, và Team Build. Dữ liệu này được tổng
hợp vào một relational database. Sau đó dữ liệu này được đặt trong một Online
Analytical Processing (OLAP) cube để hỗ trợ xu hướng report cơ bản và phân tích
dữ liệu nâng cao .
TfsWarehouse
relational database là một kho chứa dữ liệu được thiết kế để sử dụng cho việc
tuy vấn dữ liệu hơn là các transaction. Dữ liệu được chuyển giao từ các TFS
databases khác nhau, được tối ưu cho các transaction processing, vào trong kho
dữ liệu này cho mục đích báo cáo. Kho này mục đích chính không dùng lưu trữ các
báo cáo, nhưng bạn có thể sử dụng nó để build các report. TfsReportDS data
source điểm đến relational database. The Team System Data Warehouse OLAP Cube là
một OLAP database kết nối thông qua SQL Server Analysis Services. The cube có
ích cho các report cung cấp dữ liệu phân tích các xu hướng như là 'có bao nhiêu
lỗi được sữa chữa trong tháng này so với tháng vừa qua?' TfsOlapReportDS data
source điểm đến Team System Data Warehouse OLAP cube trong các analysis
services database.
Các
thành phần của hệ thống Reporting
Reporting
system bao gồm các thành phần của server-side và client-side sau:
Các thành phần Server-Side
Các
thành phần Server-side gồm có:
- Report
server databases. Những databases này chứa các report definitions,
historical reports, và configuration data(sự cấu hình dữ liệu).
- Report
server Web service. Web service này cung cấp các chương trình truy cập đến
Report Server.
- Report
Manager Web site. Trang web này cho phép các user kết nối đến Report Server
thông qua một Web browser.
- Windows
service. Service này cung cấp các lịch trình và phân phối các report
snapshots.
Các thành phần Client-Side
Các
thành phần của Client-side gồm có:
- Browser.
Thành phần này cung cấp truy cập đến Report Manager Web site.
- Team
Explorer. Thành phần này cung cấp truy cập đến các reports thông qua Visual
Studio.
Các công cụ phát triển Report
Các
tool phát triển gồm có:
- Business
Intelligence Designer Studio (BIDS). Thành phần này cho phép các lập trình
viên thiết kế và triển khai các report từ Visual Studio 2005.
- Excel.
Excel có thể được sử dụng để khởi tạo các pivot tables từ reporting store.
- Report
Builder. Thành phần này cho phép các end users thiết kế các ad-hoc report. Nó
không được hỗ trợ tốt cho Team Foundation reporting scenarios và không được khuyến
khích.
Tổng kết
The
MSF Agile và MSF CMMI process templates mỗi phần cung cấp một tập các reports mặc
định cho các bugs, release management, testing, và work item tracking:
- Bug-related reports trong process templates cho
phép bạn nhìn thấy các kiểu lỗi(bugs) đang được tạo ra để giúp đỡ xác định các
xu hướng lỗi.
- Release management reports giúp bạn xem xét thử ứng dụng của bạn có phù hợp với các bản phát hành.
- Testing reports cho phép bạn kiểm soát hiệu
quả và tiến độ của các nỗ lực kiểm thử của bạn.
- Work item reports cho phép bạn đánh giá tình
trạng hiện thời của dự án và tiến độ dự án của bạn.
Nếu
bạn muốn chỉnh sửa một report đã có và tạo mới một report, bạn có thể sử dụng Report Builder
có trong trang team reporting site, sử dụng Excel để tạo các pivot tables từ dữ
liệu trong reporting databases, hay tạo
mới một Report Server project trong Visual Studio.
Tài nguyên bổ sung