Đăng ký Đăng nhập
Trang chủ ứng dụng hệ thống quản lý bug trong quy trình kiểm thử phần mềm tại công ty cổ p...

Tài liệu ứng dụng hệ thống quản lý bug trong quy trình kiểm thử phần mềm tại công ty cổ phần truyền thông và dịch vụ nodo

.PDF
93
4
89

Mô tả:

MỤC LỤC PHẦN I: MỞ ĐẦU....................................................................................................1 1.1 Lý do lựa chọn đề tài...........................................................................................1 1.2 Mục tiêu nghiên cứu..........................................................................................1 1.3 Đối tượng và phạm vi nghiên cứu đề tài......................................................2 1.3.1 Đối tượng nghiên cứu......................................................................................2 1.3.2 Phạm vi nghiên cứu.......................................................................................2 1.4 Phương pháp nghiên cứu..................................................................................2 1.4.1 Phương pháp thu thập dữ liệu........................................................................2 1.4.2 Phương pháp xử lý số liệu...............................................................................3 CHƯƠNG 1: CƠ SỞ LÝ LUẬN VỀ HỆ THỐNG QUẢN LÝ BUG TRONG QUY TRÌNH KIỂM THỬ PHẦN MỀM...............................................................4 1.1 Những khái niệm cơ bản...............................................................................4 1.1.1 Khái niệm chung..............................................................................................4 1.1.2 Khái niệm liên quan trực tiếp tới vấn đề nghiên cứu.....................................4 1.2 Cơ sở lý luận liên quan đến hệ thống quản lý bug trong quy trình kiểm thử ...............................................................................................................5 1.2.1 Kiểm thử phần mềm..........................................................................................6 1.2.1.1 Tổng quan......................................................................................................6 1.2.1.2 Mục đích của kiểm thử phần mềm..................................................................6 1.2.1.3 Các giai đoạn kiểm thử phần mềm.................................................................7 1.2.1.4 Kiểm thử trong các giai đoạn phát triển phần mềm.......................................7 a, Kiểm thử trong giai đoạn đặc tả yêu cầu................................................................8 b, Kiểm thử trong giai đoạn thiết kế..........................................................................9 c, Kiểm thử trong giai đoạn lập trình.........................................................................9 1.2.1.5 Người kiểm thử..............................................................................................9 1.2.1.6 Luồng thông tin kiểm thử.............................................................................11 1.2.1.7 Các phương pháp kiểm thử.......................................................................11 1.2.1.8 Các mức kiểm thử........................................................................................12 1.2.2 Ứng dụng phần mềm.....................................................................................15 1.2.2.1 Tổng quan....................................................................................................15 1.2.2.1 Mục đích...................................................................................................15 1.2.2.3 Quy trình ứng dụng phần mềm.................................................................15 1.3 Tổng quan tình hình nghiên cứu....................................................................17 1.3.1 Tình hình nghiên cứu trong nước....................................................................17 1.3.2 Tình hình nghiên cứu trên thế giới..................................................................18 CHƯƠNG 2: PHÂN TÍCH, ĐÁNH GIÁ THỰC TRẠNG QUẢN LÝ BUG TRONG QUY TRÌNH KIỂM THỬ TẠI CÔNG TY CỔ PHẦN TRUYỀN THÔNG VÀ DỊCH VỤ NO DO............................................................................................18 2.1 Tổng quan về công ty........................................................................................19 2.1.1 Giới thiệu chung về doanh nghiệp..................................................................19 2.1.2 Quá trình hình thành và phát triển.................................................................19 2.1.3 Cơ cấu tổ chức và cơ cấu nhân lực.................................................................20 2.1.3.1 Cơ cấu tổ chức..........................................................................................20 2.1.3.2 Chức năng nhiệm vụ của các bộ phận......................................................21 2.1.4 Lĩnh vực hoạt động.........................................................................................21 2.1.5 Kết quả hoạt động kinh doanh........................................................................23 2.2 Thực trạng vấn đề quản lý bug trong quy trình kiểm thử tại công ty.................23 2.2.1 Các khâu trong quy trình kiểm thử................................................................23 2.2.2 Các yếu tố liên quan trong quá trình kiểm thử................................................25 2.2.3 Kết quả phân tích vấn đề nghiên cứu..............................................................25 2.2.4 Kết luận và phát hiện qua nghiên cứu............................................................28 CHƯƠNG 3: ỨNG DỤNG HỆ THỐNG QUẢN LÝ BUG TRONG QUY TRÌNH KIỂM THỬ TẠI CÔNG TY CỔ PHẦN TRUYỀN THÔNG VÀ DỊCH VỤ NODO 29 3.1 Tìm hiểu về ứng dụng hỗ trợ quy trình kiểm thử...............................................30 3.2 Đề xuất ứng dụng hỗ trợ quy trình kiểm thử tại công ty Cổ phần truyền thông và dịch vụ NoDo.........................................................................................................34 3.2.1 Giới thiệu về Redmine.....................................................................................34 3.2.1.1 Tổng quan về redmine..................................................................................34 3.2.1.2 Một số tính năng cơ bản của redmine.......................................................34 3.2.2 Cài đặt..........................................................................................................34 3.2.3 Triển khai dự án trên hệ thống redmine..........................................................39 3.2.3.1 Thông tin hệ thống.......................................................................................39 3.2.3.2 Quản lý thông tin tài khoản.........................................................................39 3.2.3.3 Hướng dẫn theo dõi các công việc cá nhân................................................41 3.2.3.4 Các thao tác với Project..............................................................................44 3.2.4 Đánh giá hệ thống..........................................................................................54 KẾT LUẬN............................................................................................................56 DANH MỤC TÀI LIỆU THAM KHẢO.................................................................56 PHỤ LỤC 57 DANH MỤC BẢNG BIỂU Bảng 1: Kết quả hoạt động kinh doanh...................................................................23 Bảng 2: Danh sách cán bộ nhân viên điền phiếu điều tra và trả lời phỏng vấn......26 Bảng 3: Các trường trong màn hình đăng ký tài khoản...........................................40 Bảng 4: Thao tác với issues.....................................................................................46 Bảng 5: Thông tin trong issue..................................................................................48 Bảng 6: Thao tác cập nhật issue..............................................................................49 Bảng 7: Thông tin tổng quan trong Settings............................................................53 Bảng 8: Danh sách module trong Settings...............................................................54 DANH MỤC HÌNH ẢNH Hình II 1: Mô hình vòng đời tổng quát phát triển một hệ thống phần mềm...............6 Hình II 2: Người lập trình.......................................................................................10 Hình II 3: Người kiểm thử.......................................................................................10 Hình II 4: Kiến thức cần có của người kiểm thử......................................................10 Hình II 5: Mô hình luồng thông tin kiểm thử...........................................................11 Hình II 6: Kiểm thử hộp đen...................................................................................11 Hình II 7: Kiểm thử hộp trắng.................................................................................12 Hình II 8: Mức độ kiểm thử cơ bản..........................................................................13 Hình II 9: Quy trình ứng dụng phần mềm................................................................15 Hình II 10: Bộ máy tổ chức Công ty cổ phần truyền thông và dịch vụ NoDo..........20 Hình II 11: Đánh giá mức độ chậm deadline trong dự án.......................................26 Hình II 12: Nguyên nhân chậm deadline.................................................................27 Hình II 13 : Hình thức trao đổi thông tin giữa các bộ phận....................................28 Hình III 1: Ứng dụng Mantis...................................................................................30 Hình III 2: Ứng dụng Bugnet...................................................................................31 Hình III 3: Ứng dụng Genie.....................................................................................32 Hình III 4: Ứng dụng Jira........................................................................................32 Hình III 5: Ứng dụng Redmine................................................................................33 Hình III 6: Cài đặt RailsInstaller.............................................................................35 Hình III 7: Đường dẫn khi cài RailsInstaller...........................................................35 Hình III 8: Cài đặt ImageMagick............................................................................36 Hình III 9: Cài đặt ImageMagick............................................................................36 Hình III 10: Kiểm tra cài đặt thành công................................................................37 Hình III 11: Kiểm tra cài đặt...................................................................................37 Hình III 12: Kiểm tra cài đặt...................................................................................39 Hình III 13: Màn hình đăng nhập của redmine.......................................................39 Hình III 14: Đăng ký tài khoản................................................................................40 Hình III 15: Màn hình quản lý tài khoản.................................................................40 Hình III 16: Khôi phục mật khẩu.............................................................................41 Hình III 17: Màn hình theo dõi các công việc cá nhân............................................41 Hình III 18: Tùy biến trang......................................................................................42 Hình III 19: Thêm block..........................................................................................42 Hình III 20: Trang thông tin dự án..........................................................................43 Hình III 21: Tổng quan về dự án.............................................................................43 Hình III 22: Tổng quát thời gian làm việc...............................................................43 Hình III 23: Tổng quát các activity mới...................................................................44 Hình III 24: Thao tác với dự án...............................................................................44 Hình III 25: Xem hoạt động của dự án....................................................................45 Hình III 26: Danh sách các vấn đề (issues).............................................................45 Hình III 27:Thao tác tạo vấn đề..............................................................................46 Hình III 28: Giao diện xem chi tiết Issue.................................................................48 Hình III 29: Biểu đồ gantt chart..............................................................................50 Hình III 30:Màn hình chọn các loại issue hiển thị trong khung bên phải................50 Hình III 31: Kéo thả các issue để cập nhật trạng thái.............................................50 Hình III 32: Version planning.................................................................................51 Hình III 33:Calender...............................................................................................51 Hình III 34:Thông báo các tin tức mới....................................................................51 Hình III 35: Danh sách tài liệu................................................................................52 Hình III 36: Thêm mới tài liệu.................................................................................52 Hình III 37: Danh sách các trang wiki....................................................................53 DANH MỤC TỪ VIẾT TẮT Danh mục từ viết tắt tiếng Việt Từ viết tắt CNTT HTTT ĐKKD VĐL TNHH CT CSDL TMĐT Nghĩa tiếng Việt Công nghệ thông tin Hệ thống thông tin Đăng ký kinh doanh Vốn điều lệ Trách nhiệm hữu hạn Công ty Cơ sở dữ liệu Thương mại điện tử LỜI MỞ ĐẦU Trong suốt 4 năm theo học tại trường Đại học Thương Mại tôi đã được làm quen với những kiến thức về chuyên ngành Hệ Thống Thông Tin Kinh Tế. Nhận thấy rằng hệ thống thông tin hiện tại là nền tảng cho sự hoạt động, vận hành của mọi doanh nghiệp. Doanh nghiệp nào muốn hoạt động vững chắc, ổn định và đạt năng suất, hiệu quả cao thì doanh nghiệp ấy phải có một hệ thống thông tin tốt, hiệu quả và phù hợp với cả môi trường bên trong và bên ngoài doanh nghiệp. Hiện tại, các doanh nghiệp Việt Nam đã và đang áp dụng những hệ thống thông tin vào trong các hoạt động sản xuất kinh doanh của mình, hướng tới việc đơn giản hóa các thủ tục, công việc có thể hệ thống hóa từ đó nâng cao hiệu quả trong các hoạt động sản xuất kinh doanh, giảm thiểu tối đa các chi phí. Vẫn còn nhiều vấn đề trong việc áp dụng, triển khai và vận hành hệ thống thông tin vào các hoạt động sản xuất kinh doanh của các doanh nghiệp Việt Nam, vậy nên chúng ta cần phải nỗ lực hơn nữa trong công tác đào tạo nguồn lực để có thể áp dụng thành công các hệ thống thông tin, phục vụ cho các hoạt động của doanh nghiệp nói riêng và toàn bộ nền kinh tế Việt Nam nói chung. Trường Đại học Thương Mại là một trong những cái nôi đầu tiên ươm mầm cho nguồn nhân lực hệ thống thông tin kinh tế ấy của nước nhà. Với hệ thống đào tạo bài bản, quy mô, khoa học và hệ thống đã đào tạo nên những cử nhân có tầm và có vực phục vụ cho việc phân tích, thiết kế và triển khai hệ thống thông tin vào doanh nghiệp. Kết thúc 4 năm đại học, tôi có cơ hội được làm khóa luận, được tổng hợp những kiến thức trong suốt thời gian theo học chuyên ngành Hệ Thống Thông Tin Kinh Tế và có điều kiện so sánh, đối chiếu với thực tế thông qua đợt thực tập do nhà trường tổ chức. Để hoàn thành được khóa luận này, tôi xin gửi lời cảm ơn chân thành và sâu sắc tới các thầy cô trong trường Đại học Thương Mại đã tận tình giúp đỡ, bồi dưỡng những kiến thức cho tôi trong suốt 4 năm theo học tại nhà trường. Đồng cảm ơn Công ty Cổ phần truyền thông và dịch vụ NoDo đã tạo điều kiện cho tôi có cơ hội, điều kiện thực tập và công tác tại công ty. Cảm ơn sự giúp đỡ chân thành và nhiệt tình của các anh, các chị là nhân viên trong công ty đã giúp tôi tìm hiểu thực tế về hoạt động của công ty và tình hình ứng dụng hệ thống thông tin vào những hoạt động đó. Đặc biệt, tôi xin chân thành cảm sự giúp đỡ tâm huyết, trách nhiệm và tận tình tới giảng viên – Thạc sỹ Hàn Minh Phương, người đã trực tiếp giúp đỡ tôi trong suốt quá trình hoàn thiện bài khóa luận này. Mặc dù đã rất cố gắng và nỗ lực song với thời gian nghiên cứu hạn hẹp, trình độ và khả năng của bản thân còn hạn chế, do đó khóa luận sẽ không tránh khỏi những thiếu sót. Kính mong các thầy, cô giáo trong khoa HTTT KINH TẾ & TMĐT, các anh/chị nhân viên trong Công ty Cổ phần truyền thông và dịch vụ NoDo chỉ bảo để bài khóa luận có giá trị hơn về mặt lý luận và mang tính thực tiễn cao. Tôi xin chân thành cảm ơn! Hà Nội, năm 2017 Sinh viên thực hiện Phùng Thị Huyền PHẦN I: MỞ ĐẦU TỔNG QUAN VẤN ĐỀ NGHIÊN CỨU 1.1 Lý do lựa chọn đề tài Ngày nay, công nghệ thông tin đang hiện diện và đóng vai trò quan trọng không thể thiếu trong quá trình quản trị, điều hành các hoạt động sản xuất kinh doanh của mỗi doanh nghiệp. Sự phát triển và ứng dụng của internet đã làm thay đổi mô hình và cách thức hoạt động kinh doanh của doanh nghiệp, việc chuyển dần các giao dịch truyền thống sang giao dịch điện tử đã ảnh hưởng đến vị trí, vai trò và cả nhu cầu của các bên hữu quan (khách hàng, nhà cung cấp, nhà đầu tư…) của doanh nghiệp. Các hoạt động đầu tư CNTT trong doanh nghiệp nhằm phục vụ cho các mục tiêu của doanh nghiệp như hỗ trợ các hoạt động tác nghiệp, hỗ trợ cho việc ra các quyết định quản lý, hỗ trợ việc xây dựng các chiến lược nhằm đạt lợi thế cạnh tranh,…Có nhiều mô hình đầu tư CNTT trong doanh nghiệp, mỗi mô hình có cách tiếp cận khác nhau nhưng đều có chung mục đích là giúp doanh nghiệp xác định được lộ trình đầu tư và mối quan hệ giữa các thành phần trong bức tranh tổng thể về ứng dụng CNTT trong doanh nghiệp. Mỗi doanh nghiệp cần phải chọn cho mình mô hình đầu tư CNTT cho phù hợp để phát huy hiệu quả các khoản đầu tư, phục vụ cho mục tiêu kinh doanh. Kiểm thử phần mềm là bộ phận sống còn của quy trình phát triển phần mềm, sự hỗ trợ quan trọng để đảm bảo chất lượng của phần mềm. Kiểm thử phần mềm là một lĩnh vực rất quan trọng trong hoạt động sản xuất cũng như gia công phần mềm.  Trong thời gian thực tập ở công ty Cổ phần truyền thông và dịch vụ NoDo công ty về lĩnh vực CNTT, em đã tìm hiểu và nhận thấy rằng quy trình quản lý lỗi để hỗ trợ quá trình thực hiện dự án vẫn còn thủ công. Điều này gây tốn thời gian và khó khăn cho nhân viên thực hiện dự án cũng như tiến độ dự án. Chính vì vậy, công ty cần một hệ thống quản lý các lỗi trong quá trình thực hiện dự án. Đó là lý do em 1 chọn đề tài “Ứng dụng hệ thống quản lý bug trong quy trình kiểm thử phần mềm tại công ty cổ phần truyền thông và dịch vụ NoDo” làm đề tài nghiên cứu. 2 1.2 Mục tiêu nghiên cứu Với đề tài “Ứng dụng hệ thống quản lý bug trong quy trình kiểm thử phần mềm tại công ty cổ phần và truyền thông dịch vụ NoDo” thì bài khóa luận sẽ giải quyết các vấn đề sau: - Tìm hiểu thực trạng, quy trình kiểm thử phần mềm tại công ty. - Tìm hiểu về ứng dụng hỗ trợ quy trình kiểm thử và đề xuất ứng dụng hỗ trợ tại công ty. - Đánh giá hiệu quả hệ thống quản lý bug cho công ty. 1.3 Đối tượng và phạm vi nghiên cứu đề tài 1.3.1 Đối tượng nghiên cứu Đối tượng nghiên cứu của đề tài là phần mềm hỗ trợ quản lý bug trong quy trình kiểm thử phần mềm của công ty Cổ phần truyền thông và dịch vụ NoDo. 1.3.2 Phạm vi nghiên cứu - Về không gian: Công ty cổ phần truyền thông và dịch vụ NoDo. - Thời gian: Năm 2017 1.4 Phương pháp nghiên cứu Để có thể đảm bảo được tính đúng đắn của thông tin cũng như tính khoa học trong nghiên cứu bài khóa luận này đã sử dụng chủ hai phương pháp: Phương pháp thu thập dữ liệu và Phương pháp xử lý số liệu. 1.4.1 Phương pháp thu thập dữ liệu Mục tiêu của phương pháp này đó là có được các thông tin liên quan đến mục tiêu đã đề ra với độ tin cậy và chính xác cao. Đề tài chủ yếu áp dụng các phương pháp: phỏng vấn, phiếu điều tra và quan sát trực tiếp. Thu thập dữ liệu sơ cấp - Để phục vụ cho quá trình khảo sát thực trạng quản lý nhân sự tại Công ty cổ phần truyền thông và dịch vụ NoDo, đề tài có sử dụng phương pháp điều tra trắc nghiệm hiện trường thông qua phiếu điều tra và bảng câu hỏi nhằm thu thập các thông tin dữ liệu từ nhiều đối tượng nhân viên thuộc các phòng ban khác nhau trong công ty như: Bộ phận lập trình, Bộ phận kiểm thử, Bộ phận kế toán, Bộ phận thị trường, Bộ phận phát hành game, Bộ phận phân tích thiết kế, Bộ phận tư vấn và chăm sóc khách hàng, Bộ phận marketing. Các phiếu điều tra được gửi cho các cán 3 bộ, nhân viên trong công ty. Sau đó, các phiếu điều tra sẽ được tổng hợp lại, xử lý và đưa vào CSDL của phần mềm Excel xử lý và phân tích. - Phương pháp quan sát giúp các phân tích viên thu thập được những thông tin không có trong tài liệu và không thu thập được qua quá trình phỏng vấn, có được một bức tranh khái quát về tổ chức và cách quản lý các hoạt động của tổ chức. - Phỏng vấn những người có ảnh hưởng đến quy trình kiểm thử là các trưởng phòng, các nhân viên và Ban giám đốc để thu được những thông tin xác thực nhất về vấn đề đang nghiên cứu. Thu thập dữ liệu thứ cấp - Các báo cáo kết quả hoạt động kinh doanh của công ty trong vòng 3 năm từ 2014- 1017 được thu thập từ Bộ phận kế toán của công ty. - Thu thập tài liệu liên quan đến cơ sở lý luận, các lý thuyết về phần mềm, hệ thống thông tin và về quy trình kiểm thử ,… từ các công trình nghiên cứu, sách, báo, internet. Sau khi thu thập đầu đủ các thông tin cần thiết sẽ tiến hành phân loại sơ bộ các tài liệu đó. Nếu cần thêm tài liệu liên quan thì bổ sung và nếu đủ rồi thì tiến hành xử lý dữ liệu. 1.4.2 Phương pháp xử lý số liệu - Sử dụng phương pháp phân tích, tổng hợp, so sánh, đánh giá dữ liệu thu thập được các số liệu (sơ cấp, thứ cấp) để có thể rút ra một số đánh giá về thực trạng quản lý bug của công ty. - Sử dụng phương pháp toán thống kê (sử dụng excel) để xử lý các tài liệu, số liệu thu thập được từ phiếu điều tra để đánh giá được thực trạng quản lý bug tại công ty. 1.5 Kết cấu khóa luận Ngoài các mục lời cảm ơn, mục lục, danh mục bảng biểu, hình vẽ, tài liệu tham khảo và phụ lục, nội dung khóa luận gồm: Phần I: Mở đầu (Tổng quan vấn đề nghiên cứu) 4 Phần II: Nội dung - Chương 1: Cơ sở lý luận về hệ thống quản lý bug trong quy trình kiểm thử. - Chương 2: Phân tích, đánh giá thực trạng quản lý bug trong quy trình kiểm thử tại công ty cổ phần truyền thông và dịch vụ NoDo. - Chương 3: Ứng dụng hệ thống quản lý bug trong quy trình kiểm thử tại công ty cổ phần truyền thông và dịch vụ NoDo. Phần III: Kết luận PHẦN II: NỘI DUNG CHƯƠNG 1: CƠ SỞ LÝ LUẬN VỀ HỆ THỐNG QUẢN LÝ BUG TRONG QUY TRÌNH KIỂM THỬ PHẦN MỀM 1.1 Những khái niệm cơ bản 1.1.1 Khái niệm chung Thông tin (Information) là các tin tức mà con người trao đổi với nhau, hay nói rộng hơn thông tin bao gồm những tri thức về các đối tượng. (Nguồn: Bài giảng Tổ chức HTTT thị trường và thương mại vĩ mô, Trường Đại học Thương Mại). Hệ thống [1] (System) là tập hợp nhiều phần tử có các mối quan hệ ràng buộc lẫn nhau và cùng hoạt động hướng tới mục đích chung. Hệ thống thông tin (Information System) là một tập hợp và kết hợp của các phần cứng, phần mềm và các hệ mạng truyền thông được xây dựng và sử dụng để thu thập, tạo, tái tạo, phân phối và chia sẻ các dữ liệu, thông tin và tri thức nhằm phục vụ các mục tiêu của tổ chức. (Nguồn: Bài giảng Tổ chức HTTT thị trường và thương mại, Bộ môn CNTT, Trường ĐH Thương Mại) 5 Hệ thống thông tin quản lý (MIS – Managament Information System) là một hệ thống tích hợp “Người – Máy” tạo ra và lưu trữ các thông tin giúp con người trong sản xuất, quản lý cũng như ra quyết định. (Nguồn: Bài giảng HTTT kinh tế và quản lý, Bộ môn CNTT, Trường ĐH Thương Mại) Phần mềm máy tính hay còn được gọi tắt là phần mềm (software) là một tập hợp các câu lệnh hoặc chỉ thị được viết bằng 1 hoặc nhiều ngôn ngữ lập trình theo một trật tự xác định nhằm tạo ra một nhiệm vụ hay chức năng năng hoặc một vấn đề cụ thể nào đó. 1.1.2 Khái niệm liên quan trực tiếp tới vấn đề nghiên cứu Kiểm thử phần mềm (Software Testing) là một hoạt động kiểm tra được thực hiện để cung cấp cho các bên liên quan thông tin về chất lượng sản phẩm hoặc dịch vụ đang được kiểm tra. Kiểm thử phần mềm cũng có thể cung cấp một cái nhìn khách quan, độc lập về phần mềm để cho phép các doanh nghiệp đánh giá và nắm được rủi ro khi triển khai phần mềm. Các kỹ thuật kiểm tra bao gồm quá trình thực hiện chương trình hoặc ứng dụng với mục đích tìm lỗi phần mềm và để xác minh rằng sản phẩm phần mềm phù hợp sử dùng. Bug là một khiếm khuyết trong một thành phần hoặc hệ thống mà nó có thể làm cho thành phần hoặc hệ thống này không thực hiện đúng chức năng, yêu cầu của nó. Có thể là lỗi giao diện, lỗi chức năng, lỗi nghiệp vụ. Testcase: Được dịch ra tiếng việt là ca kiểm thử. Là một dạng thức mô tả dữ liệu đầu vào, một số hành động (hành vi) hoặc sự kiện và một kết quả mong đợi để xác định chức năng của một ứng dụng phần mềm hoạt động đúng hay không. Quy trình kiểm thử phần mềm là một dãy các hành động, con người và hệ thống liên quan để làm ra một sản phẩm, dịch vụ theo các lặp đi lặp lại. Quy trình kiểm thử là một giai đoạn trong chu trình phát triển phần mềm. Giai đoạn này được thực hiện theo một trình tự nhất định nhằm đảm bảo phần mềm đi đúng hướng theo yêu cầu của người dùng. 6 Đặc tả yêu cầu phần mềm: Phần mềm được viết để thực hiện các nhu cầu của khách hàng. Các nhu cầu của khách hàng được thu thập, phân tích đánh giá và là cơ sở để quyết định chính xác các đặc trưng cần thiết mà sản phẩm phần mềm cần phải có. Dựa trên yêu cầu của khách hàng và các yêu cầu bắt buộc khác, đặc tả được xây dựng để miêu tả chính xác các yêu cầu mà sản phẩm phần mềm cần phải đáp ứng. Tài liệu đặc tả là cơ sở để đội ngũ phát triển phần mềm xây dựng sản phẩm phần mềm. Chất lượng và độ tin cậy của phần mềm: Theo từ điển, chất lượng của một sản phẩm được thể hiện bằng các đặc trưng phù hợp với đặc tả của nó. Theo cách hiểu này, chất lượng của một sản phẩm phần mềm là sự đáp ứng các yêu cầu về chức năng, sự hoàn thiện và việc tuân thủ nghiêm ngặt trong đặc tả, cùng các đặc trưng mong chờ từ mọi sản phẩm phần mềm chuyên nghiệp. Chất lượng phần mềm đặc trưng cho “độ tốt” của phần mềm và gồm các yếu tố về chất lượng như: tính đúng đắn (hành vi đúng như đặc tả), tính hiệu quả (tiết kiệm thời gian và tiền bạc), độ tin cậy, dễ học,dễ sử dụng…Như vậy, độ tin cậy chỉ là yếu tố để đánh giá chất lượng của một sản phẩm phần mềm. Độ tin cậy của phần mềm là xác suất để phần mềm chạy không có thất bại trong một khoảng thời gian nhất định. Nó được xem là một yếu tố quan trọng của chất lượng phần mềm. 7 1.2 Cơ sở lý luận liên quan đến hệ thống quản lý bug trong quy trình kiểm thử 1.2.1 Kiểm thử phần mềm 1.2.1.1 Tổng quan Kiểm thử phần mềm là một phần của tiến trình phát triển phần mềm. Nó là tiến trình đánh giá một hệ thống hoặc một thành phần của hệ thống bằng tay hoặc tự động, nhằm xác định lại sự thỏa mãn các yêu cầu của phần mềm. Hình II 1: Mô hình vòng đời tổng quát phát triển một hệ thống phần mềm Mô tả vòng đời tổng quát phát triển một hệ thống phần mềm: - Khi có yêu cầu của khách hàng (yêu cầu của bài toán) rõ ràng thì nhân viên tiến hành phân tích, đặc tả yêu cầu rồi gửi cho bộ phận thiết kế. - Sau khi nhận được tài liệu đặc tả, bộ phận thiết kế tiến hành thiết kế giao diện, thiết kế dữ liệu cho hệ thống và bàn giao cho bộ phận lập trình. - Bộ phận lập trình tiến hành lập trình sau khi nhận được giao diện và dữ liệu. - Phần mềm được hoàn thành thì bộ phận kiểm thử tiến hành kiểm thử phần mềm và trao đổi với bộ phận lập trình. - Cuối cùng, khi việc kiểm thử được hoàn tất thì tiến hành cài đặt, vận hành và bảo trì. 1.2.1.2 Mục đích của kiểm thử phần mềm Theo Deutsch [4]: 8 “Phát triển hệ thống phần mềm gồm rất nhiều hoạt động sản xuất và nguy cơ lỗi là rất lớn. Lỗi có thể xảy ra ngay lúc khởi đầu tiến trình, hay trong các giai đoạn thiết kế hoặc phát triển sau này…” Kiểm thử phần mềm nhằm đảm bảo chất lượng phần mềm. Theo Glen Myers [4]: Kiểm thử là tiến trình thực thi để tìm ra lỗi. - Một trường hợp kiểm thử là trường hợp có xác suất cao để tìm ra lỗi chưa biểu hiện. - Kiểm thử thành công khi phát hiện ra lỗi. Những mục đích trên đi ngược lại với quan điểm thông thường “kiểm thử thành công là kiểm thử không tìm ra lỗi nào”. Nếu kiểm thử không phát hiện ra lỗi thì ta sẽ nghĩ rằng cấu hình kiểm thử này chưa đúng và lỗi vẫn còn tiềm ẩn trong phần mềm. Nếu lỗi này được phát hiển bởi người dùng thì chi phí cho việc bảo trì, xác địn lỗi có thể gấp rất nhiều lần chi phí tìm lỗi trong quá trình phát triển. Vậy kiểm thử thành công là kiểm thử tìm ra lỗi. Chúng ta cần nhớ rằng “Kiểm thử không thể chứng được việc không có khiếm khuyết, nó chỉ có thể chứng minh rằng khiếm khuyến phần mềm hiện hữu.” 1.2.1.3 Các giai đoạn kiểm thử phần mềm Trong quá trình kiểm thử gồm 4 giai đoạn: - Phác họa môi trường của phần mềm: Tìm xem có khoảng bao nhiêu trường hợp cần kiểm thử, là những trường hợp nào. - Tìm kịch bản kiểm thử: Mỗi kịch bản sẽ có thời gian và chi phí cần thiết. Chỉ chọn một số kịch bản tiêu biểu để dùng cho kế hoạch kiểm thử. - Thực thi và đánh giá kịch bản kiểm thử: 9 Thực thi kịch bản kiểm thử: Để kết luận kết quả kiểm thử là đúng hay sai, người kiểm thử chuyển nó thành hình thức có thể thực thi được bằng cách thực hiện lại các thao tác của người dùng dựa trên kịch bản kiểm thử đó. Đánh giá kịch bản kiểm thử: Đánh giá phải dựa trên kết quả thực thi của phần mềm, kết quả thực thi kịch bản kiểm thử, kết quả mong muốn theo bản đặc tả yêu cầu. Bản đặc tả phải được đảm bảo đúng. Người kiểm thử sẽ so sánh kết quả thực thi và kết quả mong muốn có gì sai khác không - Đo lường sự tiến bộ của phần mềm sau khi đã kiểm thử: Đáng giá tiến trình kiểm thử dựa trên độ đo về kết quả kiểm thử. 1.2.1.4 Kiểm thử trong các giai đoạn phát triển phần mềm Chu trình kiểm thử: 1. Phân tích yêu cầu: Quá trình kiểm thử nên được bắt đầu từ giai đoạn yêu cầu của phần mềm. 2. Phân tích thiết kế: Trong suốt giai đoạn thiết kế, nhóm kiểm thử nên làm việc với nhóm phát triển để hiểu rõ cách thiết kế nhằm kiểm thử dễ dàng và sớm hơn. 3. Lên kế hoạch kiểm thử. 4. Trình bày kiểm thử: Thủ tục kiểm thử, kịch bản kiểm thử, những trường hợp kiểm thử, những tập lệnh kiểm thử để sử dụng trong quá trình kiểm thử. 5. Tiến hành kiểm thử: Những nhà kiểm thử tiến hành thực thi các trường hợp kiểm thử theo bản kế hoạch đã lập ra và thông báo tất cả lỗi tìm được cho nhà phát triển. 6. Thông báo kết quả kiểm thử: Khi quá trình kiểm thử thành công, người kiểm thử thông báo kiểm thử. Không phải tất cả các lỗi và khuyết điểm đều phải được sửa chữa bởi nhóm phát triển phần mềm. Một số khuyết điểm có thể do cấu hình kiểm thử chưa phù hợp với môi trường phần mềm. Một số lỗi khác có thể đợi để sửa ở phiên bản mới của phần mềm hoặc những thiếu sót có thể được người dùng chấp nhận. Nhóm phát 10 triển có thể bỏ qua những lỗi mà họ cho rằng nó ảnh hưởng không đáng kể đến chương trình. a, Kiểm thử trong giai đoạn đặc tả yêu cầu Kiểm thử yêu cầu hệ thống Mục đích của kiểm thử yêu cầu hệ thống là: - Đảm bảo cấu hình phần cứng, hệ điều hành phù hợp với phần mềm cần kiểm thử. - Chắc chắn rằng mọi chức năng hệ thống phần mềm đều thực thi tốt. - Đảm bảo các cấu hình trong hệ thống phần mềm đều được nhận ra. - Kiểm chứng sự chính xác của cấu trúc hệ thống phần mềm. - Đảm bảo rằng số lượng các yêu cầu và số lượng thuộc tính của yêu cầu theo đúng lý thuyết. - Đảm bảo rằng những yêu cầu có thể thực hiện được. Kiểm thử yêu cầu phần mềm Kiểm thử yêu cầu phần mềm là kiểm tra chi tiết các yêu cầu tương ứng với những chức năng của phần mềm. Mục đích: - Xác nhận đã hoàn thành. - Đảm bảo rằng bản đặc tả yêu cầu đáng tin cậy, có thể duy trì được, khả thi và chính xác. - Đảm bảo khả năng làm đúng các yêu cầu ở mức cao nhất. - Xác nhận rằng các yêu cầu đã đủ cho việc thiết kế phần mềm. - Xác nhận những yêu cầu là thích hợp và có thể kiểm tra được. b, Kiểm thử trong giai đoạn thiết kế. Kiểm thử thiết kế kiến trúc Mục đích của việc kiểm tra thiết kế kiến trúc là: 11
- Xem thêm -

Tài liệu liên quan