Luận văn ứ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

Chuyên khảo phân tích Luận văn ứ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, đánh giá các khía cạnh quan trọng, đề xuất hướng nghiên

Trường đại học

Đại học Thương Mại

Người đăng

Ẩn danh

Thể loại

khóa luận

2017

71
1
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI MỞ ĐẦU

1. PHẦN I: MỞ ĐẦU

1.1. Lý do lựa chọn đề tài

1.2. Mục tiêu nghiên cứu

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

1.3.2. Phạm vi nghiên cứu

1.4. Phương pháp nghiên cứu

1.4.1. Phương pháp thu thập dữ liệu

1.4.2. Phương pháp xử lý số liệu

1.5. Kết cấu khóa luận

2. PHẦN II: NỘI DUNG

2. 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

2.1. Những khái niệm cơ bản

2.1.1. Khái niệm chung

2.1.2. Khái niệm liên quan trực tiếp tới vấn đề nghiên cứu

2.2. Cơ sở lý luận liên quan đến hệ thống quản lý bug trong quy trình kiểm thử

2.2.1. Kiểm thử phần mềm

2.2.1.1. Tổng quan
2.2.1.2. Mục đích của kiểm thử phần mềm
2.2.1.3. Các giai đoạn kiểm thử phần mềm
2.2.1.4. Kiểm thử trong các giai đoạn phát triển phần mềm
2.2.1.4.1. Kiểm thử trong giai đoạn đặc tả yêu cầu
2.2.1.4.2. Kiểm thử trong giai đoạn thiết kế
2.2.1.4.3. Kiểm thử trong giai đoạn lập trình
2.2.1.5. Người kiểm thử
2.2.1.6. Luồng thông tin kiểm thử
2.2.1.7. Các phương pháp kiểm thử
2.2.1.8. Các mức kiểm thử

2.2.2. Ứng dụng phần mềm

2.2.3. Quy trình ứng dụng phần mềm

2.3. Tổng quan tình hình nghiên cứu

2.3.1. Tình hình nghiên cứu trong nước

2.3.2. Tình hình nghiên cứu trên thế giới

3. 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

3.1. Tổng quan về công ty

3.1.1. Giới thiệu chung về doanh nghiệp

3.1.2. Quá trình hình thành và phát triển

3.1.3. Cơ cấu tổ chức và cơ cấu nhân lực

3.1.3.1. Cơ cấu tổ chức
3.1.3.2. Chức năng nhiệm vụ của các bộ phận

3.1.4. Lĩnh vực hoạt động

3.1.5. Kết quả hoạt động kinh doanh

3.2. Thực trạng vấn đề quản lý bug trong quy trình kiểm thử tại công ty

3.2.1. Các khâu trong quy trình kiểm thử

3.2.2. Các yếu tố liên quan trong quá trình kiểm thử

3.2.3. Kết quả phân tích vấn đề nghiên cứu

3.2.4. Kết luận và phát hiện qua nghiên cứu

4. 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

4.1. Tìm hiểu về ứng dụng hỗ trợ quy trình kiểm thử

4.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

4.2.1. Giới thiệu về Redmine

4.2.1.1. Tổng quan về redmine
4.2.1.2. Một số tính năng cơ bản của redmine
4.2.1.3. Triển khai dự án trên hệ thống redmine
4.2.1.3.1. Thông tin hệ thống
4.2.1.3.2. Quản lý thông tin tài khoản
4.2.1.3.3. Hướng dẫn theo dõi các công việc cá nhân
4.2.1.3.4. Các thao tác với Project
4.2.1.4. Đánh giá hệ thống

DANH MỤC TÀI LIỆU THAM KHẢO

PHỤ LỤC

Tóm tắt

I. Cơ sở lý luận về hệ thống quản lý bug trong quy trình kiểm thử phần mềm

Trong bối cảnh phát triển phần mềm hiện đại, hệ thống quản lý bug đóng vai trò quan trọng trong việc đảm bảo chất lượng sản phẩm. Kiểm thử phần mềm không chỉ là một bước trong quy trình phát triển mà còn là một hoạt động cần thiết để phát hiện và khắc phục các lỗi. Quản lý lỗi hiệu quả giúp tối ưu hóa quy trình phát triển, giảm thiểu thời gian và chi phí. Theo nghiên cứu, việc áp dụng hệ thống quản lý bug giúp các nhóm phát triển phần mềm theo dõi và xử lý lỗi một cách có hệ thống, từ đó nâng cao chất lượng sản phẩm cuối cùng.

1.1 Khái niệm về kiểm thử phần mềm

Kiểm thử phần mềm là một hoạt động nhằm xác định chất lượng của sản phẩm phần mềm. Nó bao gồm việc thực hiện các kịch bản kiểm thử để phát hiện lỗi và đảm bảo rằng phần mềm đáp ứng các yêu cầu đã được xác định. Quy trình kiểm thử bao gồm nhiều giai đoạn, từ việc phân tích yêu cầu đến việc thực hiện kiểm thử và đánh giá kết quả. Việc phát hiện lỗi sớm trong quy trình phát triển giúp giảm thiểu chi phí sửa chữa và nâng cao độ tin cậy của phần mềm.

1.2 Quy trình kiểm thử phần mềm

Quy trình kiểm thử phần mềm bao gồm các bước như phân tích yêu cầu, thiết kế kịch bản kiểm thử, thực hiện kiểm thử và đánh giá kết quả. Mỗi bước đều có vai trò quan trọng trong việc đảm bảo rằng phần mềm hoạt động đúng như mong đợi. Quản lý lỗi trong quy trình này giúp theo dõi các vấn đề phát sinh và đảm bảo rằng chúng được xử lý kịp thời. Việc áp dụng hệ thống quản lý bug giúp cải thiện quy trình này, tạo ra một môi trường làm việc hiệu quả hơn cho các nhóm phát triển.

II. Phân tích thực trạng quản lý bug tại công ty Cổ phần truyền thông và dịch vụ NoDo

Tại công ty Cổ phần truyền thông và dịch vụ NoDo, quản lý bug trong quy trình kiểm thử phần mềm hiện tại còn nhiều hạn chế. Các quy trình chủ yếu được thực hiện thủ công, dẫn đến việc khó khăn trong việc theo dõi và xử lý lỗi. Phát hiện lỗi thường diễn ra muộn trong quy trình phát triển, gây ảnh hưởng đến tiến độ và chất lượng sản phẩm. Việc áp dụng một hệ thống quản lý bug sẽ giúp cải thiện tình hình này, tạo ra một quy trình làm việc hiệu quả hơn.

2.1 Thực trạng quy trình kiểm thử

Quy trình kiểm thử tại NoDo hiện tại chủ yếu dựa vào các phương pháp thủ công. Nhân viên kiểm thử phải ghi chép và theo dõi lỗi bằng tay, điều này không chỉ tốn thời gian mà còn dễ dẫn đến sai sót. Việc thiếu một hệ thống quản lý bug chuyên nghiệp khiến cho việc quản lý lỗi trở nên khó khăn, ảnh hưởng đến chất lượng sản phẩm cuối cùng.

2.2 Đánh giá hiệu quả của quy trình hiện tại

Mặc dù quy trình kiểm thử hiện tại đã giúp phát hiện một số lỗi, nhưng hiệu quả không cao. Nhiều lỗi quan trọng vẫn bị bỏ sót, dẫn đến việc sản phẩm không đáp ứng được yêu cầu của khách hàng. Việc áp dụng hệ thống quản lý bug sẽ giúp cải thiện khả năng phát hiện lỗi, từ đó nâng cao chất lượng sản phẩm và sự hài lòng của khách hàng.

III. Đề xuất ứng dụng hệ thống quản lý bug tại công ty NoDo

Để cải thiện quy trình kiểm thử phần mềm, việc áp dụng một hệ thống quản lý bug là cần thiết. Hệ thống này sẽ giúp tự động hóa quy trình theo dõi và xử lý lỗi, từ đó giảm thiểu thời gian và chi phí. Quản lý dự án phần mềm sẽ trở nên hiệu quả hơn khi có một công cụ hỗ trợ tốt. Hệ thống như Redmine có thể được áp dụng để quản lý các vấn đề phát sinh trong quá trình phát triển.

3.1 Giới thiệu về Redmine

Redmine là một công cụ quản lý dự án mã nguồn mở, cho phép theo dõi các vấn đề và quản lý dự án một cách hiệu quả. Hệ thống này hỗ trợ nhiều tính năng như quản lý bug, theo dõi tiến độ dự án và phân công công việc. Việc áp dụng Redmine sẽ giúp NoDo cải thiện quy trình quản lý bug, từ đó nâng cao chất lượng sản phẩm.

3.2 Triển khai hệ thống tại NoDo

Triển khai Redmine tại NoDo sẽ bao gồm các bước như cài đặt hệ thống, đào tạo nhân viên và thiết lập quy trình làm việc. Nhân viên sẽ được hướng dẫn cách sử dụng hệ thống để theo dõi và xử lý lỗi một cách hiệu quả. Việc này không chỉ giúp cải thiện quy trình kiểm thử phần mềm mà còn nâng cao năng suất làm việc của toàn bộ đội ngũ phát triển.

13/02/2025

Trích đoạn nội dung tài liệu

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 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. 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) 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 đó.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. 4 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. Đặ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.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.1 Kiểm thử phần mềm 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ì.2 Mục đích của kiểm thử phần mềm Theo Deutsch [4]: “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.

6 - 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.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ử: 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ử.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. 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. Lên kế hoạch kiểm thử. 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ử.

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. 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 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.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Tài liệu "Ứng Dụng Hệ Thống Quản Lý Bug Trong Kiểm Thử Phần Mềm Tại Nodo" tập trung vào việc áp dụng các hệ thống quản lý lỗi (bug) trong quy trình kiểm thử phần mềm, giúp tối ưu hóa quá trình phát hiện, theo dõi và khắc phục lỗi. Tài liệu này cung cấp cái nhìn chi tiết về cách tích hợp các công cụ quản lý bug vào môi trường phát triển phần mềm, từ đó nâng cao hiệu quả kiểm thử và đảm bảo chất lượng sản phẩm. Độc giả sẽ hiểu rõ hơn về lợi ích của việc sử dụng hệ thống quản lý bug, bao gồm việc giảm thiểu thời gian phát triển, tăng tính minh bạch và cải thiện sự hợp tác giữa các nhóm phát triển và kiểm thử.

Để mở rộng kiến thức về kiểm thử phần mềm, bạn có thể tham khảo thêm tài liệu Bài tập lớn xây dựng ứng dụng web an toàn đề tài kiểm thử ứng dụng trên nền web bằng công cụ Katalon Studio, nơi cung cấp chi tiết về kiểm thử ứng dụng web an toàn. Ngoài ra, tài liệu Nghiên cứu kiểm thử phần mềm và sử dụng công cụ Postman để test API cho website sẽ giúp bạn hiểu sâu hơn về kiểm thử API. Cuối cùng, Đề tài kiểm thử ứng dụng trên nền web bằng công cụ Selenium là một nguồn tham khảo tuyệt vời để tìm hiểu về kiểm thử tự động hóa.