« Home « Kết quả tìm kiếm

Ứng dụng tự động hóa kiểm thử hộp đen trong đánh giá bài tập/ bài thi ngôn ngữ lập trình.


Tóm tắt Xem thử

- ĐINH THỊ THU TRANG ỨNG DỤNG TỰ ĐỘNG HÓA KIỂM THỬ HỘP ĐEN TRONG ĐÁNH GIÁ BÀI TẬP / BÀI THI NGÔN NGỮ LẬP TRÌNH Chuyên ngành: Công nghệ Thông tin LUẬN VĂN THẠC SỸ KỸ THUẬT CÔNG NGHỆ THÔNG TIN Hà Nội – 2014 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI.
- ĐINH THỊ THU TRANG ỨNG DỤNG TỰ ĐỘNG HÓA KIỂM THỬ HỘP ĐEN TRONG ĐÁNH GIÁ BÀI TẬP / BÀI THI NGÔN NGỮ LẬP TRÌNH Chuyên ngành: Công nghệ Thông tin LUẬN VĂN THẠC SỸ KỸ THUẬT CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN TS.
- NGUYỄN HỮU ĐỨC Hà Nội – 2014 LỜI CAM ĐOAN Tôi xin cam đoan rằng luận văn thạc sĩ kỹ thuật đề tài: “Ứng dụng tự động hóa kiểm thử hộp đen trong đánh giá bài tập / bài thi ngôn ngữ lập trình” là công trình nghiên cứu của riêng tôi dưới sự hướng dẫn của TS.
- Giới thiệu kiểm thử và khái niệm kiểm thử phần mềm.
- Các phƣơng pháp kiểm thử phần mềm.
- 7 2.1 Các cấp độ kiểm thử phần mềm.
- 7 2.2 Các kỹ thuật kiểm thử phần mềm.
- Tự động hóa kiểm thử hộp đen.
- 10 CHƢƠNG 2 – PHÂN TÍCH VÀ THIẾT KẾ CHI TIẾT CỦA HỆ THỐNG CHẤM THI TỰ ĐỘNG.
- 17 2.1 Mục tiêu của hệ thống tự động.
- 21 3.1 Kiến trúc hệ thống.
- 26 3.3 Tổ chức dữ liệu hệ thống.
- 27 3.4 Chức năng hệ thống.
- 30 3.6 Yêu cầu về giao diện đồ họa và trang web của hệ thống.
- 30 3.7 Yêu cầu về giao hiệu năng hệ thống.
- Kỹ thuật hệ thống.
- Ngôn ngữ lập trình và môi trƣờng hệ thống.
- Mô hình hệ thống.
- 69 CHƢƠNG 3 – CÀI ĐẶT HỆ THỐNG.
- HTQLBTSV Hệ thống quản lý bài tập sinh viên 2.
- HT Hệ thống 3.
- SV Sinh viên DANH MỤC CÁC HÌNH VẼ Hình 1 : Cấp độ cơ bản của kiểm thử phần mềm.
- 7 Hình 2 : Kiểm thử hộp trắng.
- 9 Hình 3 : Kiểm thử hộp đen.
- 11 Hình 4: Sơ đồ khối quá trình vận hành hệ thống.
- 26 Hình 7: Quy trình quản lý bài tập tổng quan của HT.
- 27 Hình 8: Biểu đồ ca sử dụng của người dùng là CBPTĐT.
- 31 Hình 9: Biểu đồ hoạt động của quy trình Đăng nhập.
- 33 Hình 12: Biểu đồ hoạt động của quy trình Quản lý thông tin cá nhân.
- 35 Hình 15: Biểu đồ hoạt động của chức năng thành lập lớp/môn học.
- 40 Hình 19: Biểu đồ ca sử dụng dành cho người dùng là GV.
- 41 Hình 21: Biểu đồ hoạt động của quy trình Quản lý thông tin cá nhân.
- 43 Hình 22: Biểu đồ hoạt động của chức năng duyệt danh mục lớp/môn học.
- 44 Hình 23: Biểu đồ hoạt động của chức năng đề xuất bài tập môn học.
- 45 Hình 24: Biểu đồ hoạt động của chức năng thông báo nhắc nhở.
- 46 Hình 25: Biểu đồ hoạt động của chức năng tải tài liệu thực hiện bai tâp.
- 47 Hình 26: Biểu đồ ca sử dụng dành cho người dùng là SV.
- 49 Hình 27: Biểu đồ hoạt động của quy trình Đăng nhập.
- 51 Hình 30: Biểu đồ trình tự quản lý thông tin cá nhân.
- 54 Hình 35: Giao diện danh sách bài tập.
- 57 Hình 37: Giao diện đăng tải tài liệu thực hiện bài tập.
- Hệ thống quản lý và chấm điểm tự động đã được luận văn xây dựng dựa trên kỹ thuật kiểm thử hộp đen để tiến hành quản lý và chấm điểm một cách tự động trong các cuộc thi, bài thi của môn học.
- Hệ thống thuận lợi cho sinh viên tham gia làm các bài tập lập trình một cách trực tiếp, nhờ đó mà giáo viên sẽ được giảm thiểu tối đa việc chấm điểm bài thi, bài tập cho sinh viên.
- Để thực hiện được việc chấm điểm tự động này, trước tiên giáo viên cần biên soạn bài tập lập trình cùng với các đầu vào và đầu ra chuẩn của các bài kiểm thử.
- Kỹ thuật kiểm thử hộp đen thực chất là việc tự động biên dịch và chạy các chương trình do sinh viên thực hiện với các dữ liệu kiểm thử đầu vào, sau đó tự động đối sánh với các dữ liệu đầu ra chuẩn và dựa trên đó đánh giá mức độ hoàn thiện của chương trình theo tỷ lệ các bài kiểm thử thành công.
- Hệ thống cũng được xây dựng cùng với đầy đủ các chức năng của một hệ thống quản lý bài tập lập trình, do vậy sẵn sàng có thể đưa vào ứng dụng thực tiễn.
- Kiểm thử hộp đen và cơ chế tự động hóa quá trình chấm điểm lập trình.
- Ứng dụng kiểm thử hộp đen xây dựng hệ thống quản lý và chấm điểm tự động mã nguồn chương trình.
- Ngày nay, phát triển phần mềm là một trong những ngành nghề phát triển nhất chính vì thế mà việc dùng các công cụ tiên tiến sẽ giúp cho việc phát triển phần mềm trở nên hiệu quả hơn.
- Với những công cụ và phương pháp chúng ta sẽ giảm thiểu được tối đa công sức, chi phí và thời gian cho việc phát triển phần mềm.
- Tuy nhiên, với độ phức tạp và có sự giới hạn về thời gian, chi phí thì việc kiểm thử càng LỜI MỞ ĐẦU 2 được xiết chặt và khoa học hơn nữa nhưng điều đó vẫn không đảm bảo được phần mềm không có lỗi.
- Kiểm thử phần mềm là một quá trình liên tục và xuyên suốt quá trình phát triển phần mềm, điều đó để đảm bảo rằng mọi yêu cầu, thiết kế được đáp ứng đầy đủ.
- Các kỹ thuật kiểm thử phần mềm đã, đang và được nghiên cứu.
- Quy trình kiểm thử đã trở thành quy trình bắt buộc đối với tất cả các dự án phần mềm.
- Công việc kiểm thử tốn rất nhiều thời gian, kinh phí và việc phát hiện lỗi rất khó.
- Vậy nên nó đòi hỏi phải có kế hoạch hợp lý và quản lý chặt chẽ thì việc kiểm thử mới có kết quả tốt.
- Ở Việt Nam thì việc kiểm thử chưa được chú trọng, với những công cụ lập trình hiện đại thì dường như chúng ta làm việc theo cảm tính nên vấn đề kiểm thử cũng không được quan tâm nhiều.
- Những năm gần đây thì việc gia công phần mềm cho các công ty nước ngoài đã phát triển chính vì thế mà việc kiểm thử được chú trọng và phát triển hơn trước rất nhiều.
- Các công ty, tập đoàn nước ngoài còn thuê chúng ta để kiểm thử.
- Chính vì vậy mà sản phẩm chúng ta làm ra thì chất lượng phải được đặt lên hàng đầu, điều đó thể hiện ở việc nếu phần mềm nào không có tài liệu kiểm thử đi cùng thì sẽ không được chấp nhận.
- Trong quy trình đào tạo, một số môn học yêu cầu sinh viên phải thực hiện bài tập hàng tuần / bài tập lớn / bài kiểm tra và giáo viên cần thực hiện đánh giá các kết quả này để dựa vào đó tính điểm quá trình / điểm cuối kỳ cho môn học.
- Phần lớn những bài tập này được công bố dưới dạng một tệp tài liệu hoặc một bộ mã nguồn chương trình.
- Với hiện trạng như vậy nhu cầu xây dựng một hệ thống quản lý thông tin cho phép sinh viên gửi các bài tập cho giáo viên và cho giáo viên thống kê, đánh giá kết quả của từng sinh viên là cần thiết trong quy trình quản lý đào tạo.
- LỜI MỞ ĐẦU 3 Mục tiêu của luận văn là xây dựng một hệ thống quản lý bài tập môn học và chấm điểm tự động trực tuyến trên công nghệ phổ biến như Joomla, Liferay,… cho phép tự động hóa quy trình nộp bài và đánh giá kết quả bài tập.
- Các phần còn lại của luận văn có cấu trúc như sau: Chương 1 giới thiệu về khái niệm kiểm thử và các kỹ thuật kiểm thử thông thường, và cụ thể là kiểm thử hộp trắng, hộp đen và hộp xám.
- Chương 2 Phân tích và thiết kế chi tiết của hệ thống chấm thi tự động, đề xuất giải pháp ứng dụng kỹ thuật kiểm thử vào việc chấm điểm tự động các bài thi lập trình.
- Chương 3 cài đặt hệ thống và kết quả kiểm thử Chương 4 kết luận  Một số hệ thống chấm điểm tự động Online Judge là hệ thống chấm bài trực tuyến trên mạng Internet.
- Các thành viên chỉ cần nộp Source File lên và hệ thống sẽ chấm bài 1 cách tự động.
- Dƣới đây là số hệ thống Online Judge lớn trên thế giới nhằm giúp các bạn có thêm điều kiện để luyện tập: 1.
- Số lượng bài tập ở đây rất đa dạng và phong phú, từ những bài cơ bản về Quy Hoạch Động, Đồ Thị, thuật toán Tham Lam,… cho đến những bài tập đòi hỏi lượng kiến thức và kĩ năng nhất định của người làm.
- Đây là 1 trong những Online Judge lớn nhất trên thế giới với lượng bài tập phong phú.
- Điểm mạnh của hệ thống này là hỗ trợ khá nhiều ngôn ngữ lập trình: C.
- Hệ thống có phần Training dành cho tất cả mọi người.
- Hệ thống tổ chức định kỳ các kỳ thi và có phần thưởng cho những ai được điểm cao.
- Hệ thống chấm điểm tự động Alpha phiên bản 2.0: cho phép việc nộp bài thi hoàn toàn tự động thông qua giao diện web kết nối không dây và công bố kết quả chính xác ngay tức thời, làm tăng tính cạnh tranh, hào hứng của cuộc thi lều chõng.
- Hệ thống AMM cho phép nhận bài thí sinh, tự động biên dịch và chấm theo các test được định nghĩa bởi giáo viên ra đề.
- Hệ thống gồm 2 phân hệ AMM Online (trực tuyến) và AMM Offline (ngoại tuyến).
- Qualrus - phần mềm chấm điểm tự động: Qualrus được thiết kế không phải để thay thế hẳn vai trò chấm điểm của giáo viên, mà giúp các học sinh có nhiều thời gian suy nghĩ kỹ càng về bài viết trƣớc khi có một bài làm hoàn chỉnh nộp cho giáo viên Phần mềm Qualrus do Trường Đại học Missouri (Mỹ) LỜI MỞ ĐẦU 5 phát triển và đang được ứng dụng vào việc chấm điểm bài làm sinh viên.
- Phần mềm này sử dụng một số kỹ thuật thông minh khác nhau cho phép máy có thể so sánh nội dung bài viết với phần cơ sở dữ liệu thông tin mà các bài viết mẫu đã sử dụng nhằm phát hiện những bài viết sao chép từ mạng hay do các giáo viên, gia sư đưa ra trong các bài mẫu của họ.
- CHƢƠNG 1 – CƠ SỞ LÝ THUYẾT 6 CHƢƠNG 1 – CƠ SỞ LÝ THUYẾT Để tăng hiệu quả về chất lượng phần mềm ta nên sử dụng một số kỹ thuật kiểm thử.
- Mặt khác, các kỹ thuật kiểm thử là công cụ để việc kiểm thử đạt được hiệu quả.
- Trong kỹ thuật kiểm thử phần mềm có các loại kỹ thuật kiểm thử: kỹ kiểm thử hộp đen (back box testing): kỹ thuật này tìm các lỗi như thiếu chức năng, khả năng sử dụng và các yêu cầu phi chức năng, kỹ thuật kiểm thử hộp trắng (white box testing): tìm hiểu về cấu trúc bên trong phần mềm và kỹ thuật kiểm thử hộp xám là sự kết hợp của kỹ thuật kiểm thử hộp đen và kỹ thuật kiểm thử hộp trắng.
- Giới thiệu kiểm thử và khái niệm kiểm thử phần mềm Kiểm thử phần mềm là một hoạt động có vai trò rất quan trọng, xuyên suốt các giai đoạn phát triển phần mềm trong việc đảm bảo chất lượng phần mềm, đáp ứng các nhu cầu của người dùng.
- Chính vì thế, kiểm thử phần mềm là một trong những quy trình bước bắt buộc trong các dự án phát triển phần mềm trên thế giới.
- Ở Việt Nam, ngành phát triển phần mềm đang phát triển nên việc kiểm thử phần mềm không thể được xem nhẹ vì xác suất của sự thất bại là rất cao, ngoài ra, hầu hết các công ty phần mềm có uy tín luôn đặt quy trình kiểm thử lên hàng đầu và rất nghiêm ngặt nếu một phần mềm không có tài liệu kiểm thử thì không được chấp nhận.
- Mục đích của kiểm thử là tìm ra những lỗi mà ta chưa phát hiện, tìm ra một cách nhanh nhất và chắc chắn rằng lỗi đó sẽ được sửa.
- Mục tiêu của kiểm thử là thiết kế được một bản kiểm thử có hệ thống và thực hiện nó một cách tốt nhất, tiết kiệm thời gian thực hiện, công sức và kinh phí thực hiện nó.
- Tuy nhiên, vấn đề kiểm thử thường gặp một số khó khăn như.
- Các hệ thống phức tạp cần rất nhiều tài nguyên và chi phí.
- Quá trình phát triển phần mềm luôn phải trải qua những biến đổi cũng như sự mất mát thông tin do biến đổi làm cho việc kiểm thử gặp nhiều khó khăn.
- CHƢƠNG 1 – CƠ SỞ LÝ THUYẾT 7 - Trong quá trình kiểm thử chưa chú trọng việc đào tạo con người.
- Kiểm thử không khẳng định phần mềm hoàn toàn không có lỗi.
- Các phương pháp kiểm thử phần mềm Người ta có 2 phương pháp kiểm thử: a.
- Kiểm thử tĩnh Phương pháp sử dụng thủ công thông qua việc dùng giấy bút để kiểm thử, lặp đi lặp lại từng chi tiết.
- Kiểm thử động Sử dụng máy để chạy chương trình theo từng bước.
- Kiểm thử tĩnh thường được tiến hành trước kiểm thử động nhằm tạo ra được kịch bản cho kiểm thử động để người kiểm thử dễ theo dõi.
- 2.1 Các cấp độ kiểm thử phần mềm Cấp độ kiểm thử phần mềm: Hình 1 : Cấp độ cơ bản của kiểm thử phần mềm a.
- Kiểm thử module Được thực hiện một cách độc lập với nhau dựa trên các kỹ thuật có.
- Khi quá trình kiểm thử kết thúc thì bước kiểm thử tiếp theo sẽ được thực hiện.
- Kiểm thử module Kiểm thử mức tích hợp các đơn vị (Integration Test) Kiểm thử mức hệ thống, sau khi tích hợp (System Test) Kiểm thử để chấp nhận sản phẩm (Acceptance Test) Các bộ phận đơn lẻ Các nhóm bộ phận Toàn bộ hệ thống Toàn bộ hệ thống nhìn từ khách hàng

Xem thử không khả dụng, vui lòng xem tại trang nguồn
hoặc xem Tóm tắt