Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 25 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
25
Dung lượng
666,25 KB
Nội dung
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
LA THỊ THÀNH
NGHIÊN CỨUPHƯƠNGPHÁPKIỂMTHỬHIỆUNĂNGTRONGQUÁTRÌNHXÂYDỰNGWEBSITE
Chuyên ngành: Khoa học máy tính
Mã số: 60.48.01.01
Người hướng dẫn khoa học: PGS.TS HUỲNH QUYẾT THẮNG
TÓM TẮT LUẬN VĂN THẠC SĨ
HÀ NỘI – 2013
1
MỞ ĐẦU
Kiểm thửhiệunăngwebsite để tìm ra điểm “thắt cổ chai” của
hệ thống trước khi chúng xảy ra trong môi trường sử dụng thực. Nó
có thể giúp giải quyết các vấn đề chẳng hạn như sự sẵn sàng của máy
chủ web cho số lượng ngày càng cao người sử dụng, khả năng sống
sót trong lưu lượng truy cập của người dùng.Việc bỏ qua các vấn đề
kiểm thửhiệunăngwebsite trước khi chuyển giao cho người sử dụng
có thể dẫn đến số người truy cập website thấp và sự tồn tại của
website khó được đảm bảo. Kiểmthửhiệunăngwebsite càng diễn ra
sớm bao nhiêu thì việc tìm ra các lỗi càng sớm bấy nhiêu, qua đó kịp
thời có những thay đổi thích hợp để tăng khả năng thực thi của
website.
Nhận thấy tầm quan trọng của kiểmthửhiệunăngwebsite
trong quátrìnhxâydựng và phát triển web, em quyết định chọn đề
tài: “Nghiên cứuphươngphápkiểmthửhiệunăngtrongquátrình
xây dựng website”.
Nội dung của luận văn bao gồm ba chương:
Chương 1: Tổng quan về kiểmthửhiệunăng
Chương 2: Phươngphápkiểmthửhiệunăngtrongquátrình
xây dựngwebsite
Chương 3: Áp dụngkiểmthửhiệunăngtrongquátrìnhxây
dựng website trung tâm công nghệ thông tin và truyền thông (CNTT
&TT) của Sở thông tin và truyền thông tỉnh Bắc Giang.
2
CHƢƠNG 1: TỔNG QUAN VỀ KIỂMTHỬHIỆUNĂNG
Kiểm thửhiệunăng (Performance testing) là một khái niệm
phức tạp, là hoạt động công nghệ trả lời cho các câu hỏi liên quan
tới hiệunăng của hệ thống. Trong chương này, chúng ta sẽ xem xét
các khái niệm liên quan tới kiểmthửhiệu năng, lý thuyết về kiểmthử
hiệu năng, đặc biệt là quy trìnhkiểmthửhiệu năng.
1.1. Các khái niệm
1.1.1. Kiểmthửhiệunăng
Gao và cộng sự định nghĩa kiểmthửhiệunăng như là hành
động để xác nhận hiệunăng hệ thống và đo công suất hệ thống. Có
ba mục tiêu chính được đề cập tới. Đầu tiên là để xác nhận khả năng
hệ thống đáp ứng các yêu cầu hiệu năng. Mục tiêu thứ hai là tìm
kiếm thông tin về công suất và giới hạn biên. Mục tiêu cuối cùng là
để hỗ trợ những người thiết kế và phát triển hệ thống trong việc tìm
kiếm các vấn đề hiệu năng, nút cổ chai và/hoặc để tiếp tục điều
chỉnh, cải thiện hiệunăng hệ thống.
Kiểm thửhiệunăng là tiến trìnhthu thập và phân tích thông
tin mà trong đó dữ liệu đo lường được tập hợp để dự đoán khi nào
các mức tải sẽ vượt quá khả năng chịu đựng của nguồn tài nguyên hệ
thống.
1.1.2. Thời gian đáp ứng, độ trễ
Thời gian đáp ứng là thời gian trôi qua giữa sự kết thúc của
một yêu cầu trên một máy tính và bắt đầu của sự đáp ứng.
Độ trễ (latency) là thời gian cần thiết để hoàn thành một yêu
cầu. Thời gian cần để dữ liệu truyền từ một máy tính đến một máy
3
tính khác được gọi là độ trễ mạng (network latency). Thời gian để
một trình chủ hoàn thành xử lý một yêu cầu được gọi là độ trễ trình
chủ (server latency).
1.1.3. Sức tải công việc
Sức tải công việc (workload) là lượng xử lý và quản lý lưu
thông được yêu cầu của một hệ thống. Để đánh giá sức tải của một hệ
thống, ba yếu tố cần được xem xét là người sử dụng, ứng dụng và
nguồn tài nguyên.
1.1.4. Độ đo hiệunăng
Các độ đo phổ biến thường dùng là: giao tác trên mỗi giây, số
yêu cầu trên mỗi giây, kết nối đồng thời, thông lượng.
1.1.5. Use-case và Kịch bản
Use – case mô tả các kiểu hành vi của một cá nhân người
dùng.
Một kịch bản test được xác định như một luồng thông điệp
giữa các thành phần tương tác. Nó mô tả một sự tương tác được xác
định bởi hành vi của người dùng và các nhân tố khác của hệ thống.
1.1.6.Test case, test script
* Một trường hợp kiểmthử (Test case -TC) là một tình huống
kiểm tra, được thiết kế để kiểm tra một đối tượng có thỏa mãn yêu
cầu đặt ra hay không. Một test case thường bao gồm 3 phần cơ bản:
- Điều kiện: đặc tả các điều kiện cần có để tiến hành kiểm
tra.
- Đầu vào: đặc tả đối tượng hay dữ liệu cần thiết, được sử
dụng làm đầu vào để thực hiện việc kiểm tra.
4
- Kết quả mong chờ: kết quả mong đợi trả về từ đối tượng
kiểm tra.
* Một kịch bản (Test Script) là một nhóm mã lệnh dạng đặc tả
kịch bản dùng để tự động hóa một trình tự kiểm tra, giúp cho việc
kiểm tra nhanh hơn, hoặc cho những trường hợp mà kiểm tra bằng
tay sẽ rất khó khăn hoặc không khả thi. Các Test Script có thể tạo thủ
công hoặc tạo tự động dùng công cụ kiểm tra tự động. Test Script
được thực hiện khi kiểmthử tự động.
1.2.Vai trò của kiểmthửhiệunăng
Kiểm thửhiệunăng giúp: Đoán trước được những lỗi có thể
xảy ra khi triển khai phần mềm vào thực tế trong môi trường có nhiều
người dùng, tìm ra hiệunăng thực thi tối đa của phần mềm và tìm ra
nơi cần cải tiến cho phần mềm.
Kiểm thửhiệunăng mang các đặc tính ưu việt của kiểmthử tự
động.
Kiểm thửhiệunăng là phươngpháp đánh giá một cách hiệu
quả hiệu suất của hệ thống, tự động kiểm tra quátrình giúp tạo ra
thêm những thông tin xác thực, ngăn chặn thời gian chết của hệ thống
và các vấn đề khác.
1.3. Các kiểu kiểmthửhiệunăng
1.3.1. Kiểmthử tải
1.3.2. Kiểmthử sự căng thẳng
1.3.3. Kiểmthử khối lượng
1.4. Quy trìnhkiểmthửhiệunăng
Hình 1.1 minh họa tổng quan quy trìnhkiểmthửhiệu năng.
5
Hình 1.1. Quy trìnhkiểmthửhiệunăng
1.5. Một số công nghệ xâydựngwebsite
Hiện nay có rất nhiều công nghệ được sử dụng để phát triển
website như PHP, Joomla, Drupal, ASP, ASP.NET, JSP, EJB 3.0
Sau đây sẽ đưa ra một vài so sánh cơ bản về các công nghệ này:
6
Bảng 1.1. Bảng so sánh các giải pháp .Net, Java, Joomla,
Drupal
.NET
Java
Joomla
Drupal
Khả năngxâydựng
hệ quản trị nội dung
(CMS)
Tốt
Tốt
Tốt
Tốt
Khả năng tạo lập
kiểu nội dung nhanh
chóng trên nền web
Không
có sẵn
Không
có sẵn
Không
có sẵn
Có
Khả năng thiết lập
quy trình xử lý
Có
Có
Không
Có
Khả năngxâydựng
ứng dụng web
Rất tốt
Rất tốt
Kém
Rất tốt
Khả năng phát triển
nhanh ứng dụng
Cần môi
trường
IDE
Cần môi
trường
IDE
Các
modul
có sẵn
Đơn
giản
Các nền tảng phần
mềm đi kèm miễn
phí
Không
Có
Có
Có
Hỗ trợ kết nối cơ sở
dữ liệu Sql server
Sẵn có
Ko
Ko
Ko
Phát triển ứng dụng
linh hoạt
Tốt
Tốt
Khá
Tốt
Hosting phổ biến và
dễ dàng
TB
Kém
Rất tốt
Rất tốt
7
Chi phí bản quyền
Có
Không
Không
Không
Dễ dàng bảo trì phát
triển hệ thống
Khá
Khá
Khá
Tốt
Yêu cầu trình độ lập
trình
Cao
Cao
TB
Khá
Tốc độ xử lý
Tốt
TB
Tốt
Tốt
Yêu cầu cấu hình
máy chủ
Cao
TB
TB
TB
An ninh bảo mật
Tốt
Rất tốt
tốt
Rất tốt
8
CHƢƠNG 2: PHƢƠNG PHÁPKIỂMTHỬHIỆUNĂNG
TRONG QUÁTRÌNHXÂYDỰNGWEBSITE
Chương này nghiêncứuquátrìnhkiểm tra hiệunăngtrong
giai đoạn thiết kế, xâydựng website. Ở đây, xem xét những kết quả
khác nhau khi sử dụng các thiết kế khác nhau, người thiết kế có thể
sớm phát hiện ra nút “thắt cổ chai” và quyết định làm thế nào để hạn
chế tác động của sự thỏa hiệp về hiệunăngtrong dự án phần mềm.
Thực hiện kiểmthửhiệunăngtrongquátrình thiết kế giúp cho người
phát triển phần mềm tránh đưa ra quyết định thiết kế ban đầu mà
mang lại hiệu suất kém khi triển khai phần mềm sau này.
2.1. Giới thiệu
Thành công của kiểmthửhiệunăngtrongquátrình thiết kế
phần mềm (design-time performance testing - DTPT) dựa vào khả
năng xác định nhanh chóng và chính xác những kết quảhiệunăng
của các giải pháp tùy chọn cho một bài toán thiết kế. Có hai điều
quan trọng của DTPT: tốc độ, độ chính xác.
Thông qua thiết kế bộ kiểmthửhiệu năng, người thiết kế có
thể xem lại và thay đổi quyết định thiết kế khi dự án yêu cầu thay đổi.
Điều này giúp cho các thiết kế thích ứng với các thay đổi trong khi
giảm số việc cần làm lại để thu thập các ước tính khi đối mặt với các
yêu cầu thay đổi.
2.2. Một số phƣơng pháp DTPT
Có một số phươngpháp để tính toán hiệunăng phần mềm
trong thời gian thiết kế. Trong chương này, người viết luận văn
(NVLV) trình bày bốn phươngpháp tiếp cận cơ bản: thực hiện theo
9
luật hiệunăng chung, tìm kiếm lời khuyên của các chuyên gia hiệu
năng, sử dụng mô phỏng hoặc các mô hình phân tích, và xâydựng
một nguyên mẫu cho kiểmthửhiệu năng.
2.2.1. Phươngpháp luật hiệunăng
Luật hiệunăng thường là những chính sách và thông lệ chung.
Tính toán được tạo bởi luật hiệunăng được dựa trên kinh nghiệm của
những người khác và mặc dù một vài kinh nghiệm này được ghi chép
lại cẩn thận, các tài liệu cung cấp có một lượng độc giả lớn nhưng
không phải đều đặc trưng với các dự án.
2.2.2. Phươngpháp lấy ý kiến chuyên gia
Các chuyên gia có kinh nghiệm thực hiện tối ưu hóa hiệunăng
cho các ứng dụng tương tự như đang thiết kế hệ thống. Dựa vào kinh
nghiệm của họ, các chuyên gia hiệunăng có thể giúp nhà thiết kế
hiểu được hậu quả của việc lựa chọn các giải pháp khác khau.
Mỗi lần ứng dụng được thực thi, chuyên gia hiệunăng sử dụng
công cụ ghi hình và giám sát để tối ưu hiệunăng của ứng dụng. Với
kinh nghiệm ghi hình, giám sát và tối ưu của họ, các chuyên gia có
thể đưa ra dự đoán về việc thực hiện các quyết định thiết kế. Với
những dự đoán của chuyên gia, nhà thiết kế có thể đưa ra nhiều hơn
thông tin cho việc thực hiện quyết định.
2.2.3. Phươngpháp sử dụng mô hình phân tích
Mô hình phân tích mô tả các thành phần chính của một ứng
dụng và trừu tượng hóa những chi tiết không quan trọng. Thường các
mô hình này bao gồm các thành phần gửi thông điệp qua mạng xếp
hàng, và có thể được sử dụng vào giai đoạn đầu của quátrình phát
[...]... vấn đề nghiêncứu về "Nghiên cứuphươngpháp kiểm thửhiệunăng trong quátrìnhxâydựng website" trong khuôn khổ của luận văn này chỉ dừng lại ở những nghiêncứu ban đầu Vì vậy, những nghiêncứu tiếp theo về vấn đề này có thể tập trung triển khai theo các hướng như sau: - Nghiêncứu chi tiết hơn việc xâydựng nguyên mẫu cho quátrình DTPT - Nghiêncứu các phươngpháp để kiểmthử toàn diện website. .. kiểmthửhiệunăng trong quátrìnhxâydựng phần mềm như: luật hiệu năng, lấy ý kiến chuyên gia, sử dụng mô hình phân tích, phươngpháp nguyên mẫu Trong đó, với mỗi phươngpháp đều đưa ra những nghiên cứu, ứng dụng điển hình Cuối cùng NVLV đã đưa ra nhận xét đánh giá các phương pháp, để lựa chọn được phươngpháp tốt hơn cả đó là phươngpháp nguyên mẫu 5 Xâydựng và triển khai phươngphápkiểmthử hiệu. .. tả các bước chi tiết để kiểm tra (thủ tục kiểm thử) - Xem xét và khảo sát độ bao phủ của việc kiểm tra - Xem xét test case và các bước kiểm tra 15 CHƢƠNG 3: ÁP DỤNGKIỂMTHỬHIỆUNĂNGTRONGQUÁTRÌNHXÂYDỰNGWEBSITE TRUNG TÂM CNTT BẮC GIANG Trong chương này, sẽ áp dụngphươngphápkiểmthửhiệunăngwebsitetrong giai đoạn thiết kế ở trên (phương pháp nguyên mẫu) vào một số website của trung tâm CNTT&TT... nhận xét, đánh giá và chọn lựa phươngpháp (phương pháp nguyên mẫu) - Dựa trên những tìm hiểu về phươngpháp nguyên mẫu của Denaro và Kruger, NVLV đã đưa ra quy trình thực hiện kiểmthửhiệunăng DTPT tổng quát - NVLV cũng đã trình bày các bước xâydựng test case cho việc kiểmthử - Để minh họa cho quy trình DTPT tổng quát, NVLV đã áp dụng quy trình đó vào quátrìnhxâydựngwebsite của trung tâm CNTT... kiểmthửhiệunăngtrong giai đoạn xâydựngwebsite (DTPT) Từ đó, sớm phát hiện ra lỗi và kịp thời có những thay đổi để nâng cao chất lượng website ngay từ lúc xây dựng, thiết kế Các kết quả chính đạt đƣợc trong đề tài: - Luận văn đã tổng hợp được những nội dung lý thuyết cơ bản của kiểmthửhiệunăng Đưa ra một số phươngphápkiểmthửhiệu 23 năng trong quátrìnhxâydựng phần mềm (website) , sau đó... chịu test 3.1.3 Đề xuất giải pháp DTPT khi xâydựngWebsite tại trung tâm Dựa trên quy trình DTPT đã nghiêncứu ở chương 2, tôi đề xuất quy trình triển khai kiểmthửhiệunăngtrongquátrình thiết kế website được chọn trong chương này như sau: Hình 3.1 Minh họa quy trình DTPT đƣợc đề xuất áp dụng 17 3.2 Lập kế hoạch kiểmthử 3.2.1 Thông tin chung Hình 3.2 Các chức năng của website: http://stttt.bacgiang.gov.vn/... trong quátrìnhxâydựng website đã cơ bản hoàn thành Đề tài đã giải quyết được các vấn đề sau: 1 Tìm hiểu vai trò, những khái niệm cơ bản, sự phân loại của kiểmthửhiệunăng 2 Trình bày chi tiết quy trìnhkiểmthửhiệunăng 3 Tìm hiểu, so sánh các mô hình, công nghệ lập trình web phổ biến Trong đó có đưa ra một vài nét cơ bản về hiệunăng của một số công nghệ 4 Luận văn đã đưa ra một số phương pháp. .. trên phươngpháp nguyên mẫu có thể được xâydựng để biết được hoạt động của hệ thống trong trường hợp chung, không cần phần mềm trung gian, các thành phần thực hiện Trong luận văn của mình, tôi áp dụng quy trìnhkiểmthửhiệunăng theo phương 12 pháp Denaro và Kruger để tạo điều kiện cho sự hiểu biết ban đầu về chất lượng hiệunăngtrongquátrình phát triển phần mềm Việc này dựa trên nghiêncứu của... tập trung nghiên cứu, phát triển bước đầu có kết quả đã đáp ứng yêu cầu công tác quản lý nhà nước phục vụ cải cách hành chính Quy trình chung khi xâydựngwebsite của trung tâm là: 1- Thiết kế 2- Lựa chọn modul, thiết kế thử, đánh giá tính năng, hiệunăng 3- Hiệu chỉnh modul theo yêu cầu cụ thể 4- Test 5- Chuyển giao 6- Bảo trì 16 3.1.2 Hiện trạng kiểmthửhiệunăngtrong Dự án xâydựngWebsite tại... với giải pháp được đề xuất áp dụng B Kiến nghị * Trongquátrình thực hiện đề tài, tác giả gặp một số khó khăn sau: - Tài liệu nghiêncứu chủ yếu bằng tiếng Anh khi dịch sang tiếng Việt nhiều đoạn, câu sẽ khó tránh khỏi không đúng, không sát với ý đồ của tác giả - Khi áp dụng quy trình DTPT vào ứng dụngkiểmthửhiệunăngtrongquátrìnhxâydựngwebsite của trung tâm CNTT&TT, gặp khó khăn trong việc . hiệu năng
Chương 2: Phương pháp kiểm thử hiệu năng trong quá trình
xây dựng website
Chương 3: Áp dụng kiểm thử hiệu năng trong quá trình xây
dựng website. PHƢƠNG PHÁP KIỂM THỬ HIỆU NĂNG
TRONG QUÁ TRÌNH XÂY DỰNG WEBSITE
Chương này nghiên cứu quá trình kiểm tra hiệu năng trong
giai đoạn thiết kế, xây dựng website.