Báo cáo chuyên đề học phần môn công nghệ phần mềm đề ti xây dựng phần mềm quản lý hệ thống dạy guitar online tunguitar com

81 2 0
Báo cáo chuyên đề học phần môn công nghệ phần mềm đề ti xây dựng phần mềm quản lý hệ thống dạy guitar online tunguitar com

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

TRƯỜNG ĐẠI HỌC ĐIỆN LỰC KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO CHUYÊN ĐỀ HỌC PHẦN MÔN CÔNG NGHỆ PHẦN MỀM ĐỀ TI: XÂY DỰNG PHẦN MỀM QUẢN LÝ HỆ THỐNG DẠY GUITAR ONLINE: TUNGUITAR.COM Sinh viên thực : VŨ ANH TÙNG Giảng viên hướng dẫn : TS LÊ THỊ TRANG LINH Ngành : CÔNG NGHỆ THÔNG TIN Chuyên ngành : CƠNG NGHỆ PHẦN MỀM Lớp : D15CNPM4 Khóa : 2020-2025 Hà Nội, tháng 11 năm 2022 Mô tả tóm tắt đề tài  Xây dựng phần mềm quản lý hệ thống dạy Guitar online: tunguitar.com bao gồm chức sau:  Đăng nhập/ đăng xuất  Thêm/ sửa/ xóa Giảng Viên  Thêm/ sửa/ xóa Học Viên  Thêm/ sửa/ xóa Lớp Nội dung thực  Chương 1: Giới thiệu dự án phần mềm  Chương 2: Quản lý dự án  Chương 3: Phân tích  Chương 4: Thiết kế  Chương 5: Lập trình  Chương 6: Kiểm thử  Chương 7: Đóng gói phần mềm Kết đạt Hồn thành đề cương chun đề học phần mơn: “Cơng nghệ phần mềm” Xây dựng phần mềm hoàn chỉnh với đầy đủ chức năng, đơn giản phù hợp với doanh nghiệp vừa nhỏ Giảng viên hướng dẫn (ký ghi rõ họ tên) Hà Nội, ngày 01 tháng 10 năm 2021 Sinh viên thực (ký ghi rõ họ tên) TS Lê Thị Trang Linh Vũ Anh Tùng PHIẾU CHẤM ĐIỂM ST T Họ tên sinh viên Nội dung thực Vũ Anh Tùng Giới thiệu + Quản lý + 20810310406 Phân tích + Thiết kế + Họ tên giảng viên Giảng viên chấm 1: Giảng viên chấm 2: Điể m Chữ ký Lập trình + Kiểm thử + Đóng gói Chữ ký Ghi MỤC LỤC LỜI MỞ ĐẦU CHƯƠNG GIỚI THIỆU DỰ ÁN PHẦN MỀM 1.1 Khảo sát hệ thống 1.1.1 Hiện trạng 1.1.2 Tổng quan 1.1.3 Hoạt động nghiệp vụ 1.2 Xác định toán cần giải 1.3 Phân tích đặc tả nghiệp vụ hệ thống .3 1.4 Xác định yêu cầu hệ thống 1.4.1 Yêu cầu chức 1.4.2 Yêu cầu phi chức .4 CHƯƠNG 2: QUẢN LÝ DỰ ÁN 2.1 Ước lượng dự án 2.1.1 Ước lượng chi phí .6 2.1.2 2.1.3 Ước lượng thời gian Ước lượng số lượng người tham gia 10 2.2 Lập lịch theo dõi dự án 10 CHƯƠNG III: PHÂN TÍCH 13 3.1 3.2 3.3 3.3.1 3.3.2 3.4 Xác định Actor Use case tổng quát hệ thống 13 Phân tích, thiết kế chức hệ thống 14 Chức đăng nhập .15 Biểu đồ use case chức đăng nhập 15 Biểu đồ hoạt động chức đăng nhập 16 Chức thêm giảng viên 18 3.4.1 Biểu đồ use case chức thêm giảng viên .18 3.4.2 Biểu đồ hoạt động chức thêm giảng viên 19 3.5 Chức sửa giảng viên 21 3.5.1 3.5.2 3.6 Biểu đồ use case chức sửa giảng viên 21 Biểu đồ hoạt động chức sửa giảng viên 22 Chức xóa giảng viên 24 3.6.1 Biểu đồ use case chức xóa giảng viên 24 3.6.2 Biểu đồ hoạt động chức xóa giảng viên 25 3.7 Chức thêm học viên .27 3.7.1 Biểu đồ use case chức thêm học viên 27 3.7.2 Biểu đồ hoạt động chức thêm học viên .28 3.8 Chức sửa học viên 30 3.8.1 Biểu đồ use case chức sửa học viên 30 3.8.2 Biểu đồ hoạt động chức sửa học viên 31 3.9 Chức xóa học viên 33 3.9.1 3.9.2 Biểu đồ use case chức xóa học viên 33 Biểu đồ hoạt động chức xóa học viên 34 3.10 Chức thêm lớp 36 3.10.1 Biểu đồ use case chức thêm lớp 36 3.10.2 Biểu đồ hoạt động chức thêm lớp 37 3.11 Chức sửa lớp 39 3.11.1 3.11.2 Biểu đồ use case chức sửa lớp 39 Biểu đồ hoạt động chức sửa lớp .40 3.12 Chức xóa lớp 42 3.12.1 Biểu đồ use case chức xóa lớp 42 3.12.2 Biểu đồ hoạt động chức xóa lớp .43 CHƯƠNG THIẾT KẾ 46 4.1 Thiết kế giao diện 46 4.1.1 Giao diện trang chủ 46 4.1.2 4.1.3 4.1.4 Giao diện đăng nhập 46 Giao diện quản lý giảng viên 46 Giao diện quản lý học viên .47 4.1.5 Giao diện quản lý lớp .48 4.2 Thiết kế lưu trữ .48 4.2.1 Biểu đồ Diagrams 48 4.2.2 Các bảng sở liệu .49 CHƯƠNG LẬP TRÌNH .51 5.1 Giới thiệu công cụ 51 5.1.1 Công cụ biên dịch mã nguồn 51 Recommandé pour toi 27 Suite du document ci-dessous A Handbook OF Present-DAY English Lingua Inglese (Lingua E Fonologia)(A) 29 CH - The Pronunciation of English - A Handbook of Present-Day English Lingua Inglese 10 100% (7) A handbook of present-day english Lingua Inglese 100% (9) 100% (7) Prokaryote vs Eukaryote Worksheeet Intro to Speech 89% (28) 5.1.2 Công cụ lưu trữ liệu 51 5.2 Cơ sở liệu 51 5.2.1 Giảng viên 51 5.2.2 Học viên .52 5.2.3 Lớp .52 5.3 Code giao diện phần mềm 53 5.3.1 5.3.2 5.3.3 Giao diện đăng nhập 53 Giao diện trang chủ 54 Giao diện quản lý giảng viên 56 5.3.4 5.3.5 Giao diện quản lý học viên .58 Giao diện quản lý lớp .61 CHƯƠNG KIỂM THỬ 64 6.1 Văn chiến lược kế hoạch kiểm thử 64 6.1.1 Các công đoạn kiểm thử 64 6.1.2 Chuẩn bị môi trường kiểm thử 64 6.1.4 Thực kiểm thử 65 6.1.5 Kế hoạch kiểm thử 65 6.2 Testcase 66 KẾT LUẬN 70 DANH MỤC BẢNG BIỂU Bảng 2.1: Bảng ước lượng thời gian Bảng 2.1: Bảng ước lượng thời gian Bảng 2.2: Bảng lập lịch theo dõi Bảng 6.1: Bảng công đoạn kiểm thử Bảng 6.2: Bảng chuẩn bị môi trường kiểm thử Bảng 6.3: Bảng thiết kế kiểm tra Bảng 6.4: Bảng thực kiểm thử Bảng 6.5: Bảng kế hoạch kiểm thử Bảng 6.6: Bảng testcase DANH MỤC HÌNH ẢNH Hình 3.1: Biểu đồ use case tổng quát hệ thống Hình 3.2: Biểu đồ use case chức đăng nhập Hình 3.3: Biểu đồ hoạt động chức đăng nhập Hình 3.4: Biểu đồ use case chức thêm giảng viên Hình 3.5: Biểu đồ hoạt động chức thêm giảng viên Hình 3.6: Biểu đồ use case chức sửa giảng viên Hình 3.7: Biểu đồ hoạt động chức sửa giảng viên Hình 3.8: Biểu đồ use case chức xóa giảng viên Hình 3.9: Biểu đồ hoạt động chức xóa giảng viên Hình 3.10: Biểu đồ use case chức thêm học viên Hình 3.11: Biểu đồ hoạt động chức thêm học viên Hình 3.12: Biểu đồ use case chức sửa học viên Hình 3.13: Biểu đồ hoạt động chức sửa học viên Hình 3.14: Biểu đồ use case chức xóa học viên Hình 3.15: Biểu đồ hoạt động chức xóa học viên Hình 3.16: Biểu đồ use case chức thêm lớp Hình 3.17: Biểu đồ hoạt động chức thêm lớp Hình 3.18: Biểu đồ use case chức sửa lớp Hình 3.19: Biểu đồ hoạt động chức sửa lớp Hình 3.20: Biểu đồ use case chức xóa lớp Hình 3.21: Biểu đồ hoạt động chức xóa lớp Hình 4.1: Giao diện trang chủ Hình 4.2: Giao diện đăng nhập Hình 4.3: Giao diện quản lý giảng viên Hình 4.4: Giao diện quản lý học viên Hình 4.5: Giao diện quản lý lớp private void button1_Click(object sender, EventArgs e) { frmQLGiangVien f = new frmQLGiangVien(); f.Show(); this.Hide(); } private void button3_Click(object sender, EventArgs e) { frmQLHocVien f = new frmQLHocVien(); f.Show(); this.Hide(); } private void button4_Click(object sender, EventArgs e) { frmQLLop f = new frmQLLop(); f.Show(); this.Hide(); } } } 5.3.3 Giao diện quản lý giảng viên using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace QLHeThongDayGuitar { 56 public partial class frmQLGiangVien : Form { public bool isExit = true; public frmQLGiangVien() { InitializeComponent(); } private void buttonGVMoi_Click(object sender, EventArgs e) { gIANGVIENBindingSource.AddNew(); } private void buttonThemGV_Click(object sender, EventArgs e) { gIANGVIENBindingSource.EndEdit(); gIANGVIENTableAdapter.Update(quanLyDayGuitarDataSet.GIANGVIEN) ; MessageBox.Show("Thêm thành công!"); } private void buttonSuaGV_Click(object sender, EventArgs e) { gIANGVIENBindingSource.EndEdit(); gIANGVIENTableAdapter.Update(quanLyDayGuitarDataSet.GIANGVIEN) ; MessageBox.Show("Sửa thành công!"); } private void buttonXoaGV_Click(object sender, EventArgs e) { gIANGVIENBindingSource.RemoveCurrent(); MessageBox.Show("Xóa thành cơng!"); } private void frmQLGiangVien_Load(object sender, EventArgs e) { // TODO: This line of code loads data into the 'quanLyDayGuitarDataSet.GIANGVIEN' table You can move, or remove it, as needed 57 this.gIANGVIENTableAdapter.Fill(this.quanLyDayGuitarDataSet.GIANGV IEN); } private void frmQLGiangVien_FormClosed(object sender, FormClosedEventArgs e) { if (isExit) Application.Exit(); } private void buttonThoat_Click(object sender, EventArgs e) { frmTrangChu f = new frmTrangChu(); f.Show(); this.Hide(); } private void frmQLGiangVien_FormClosing(object sender, FormClosingEventArgs e) { if (isExit) { if (MessageBox.Show("Bạn muốn chương trình ?", "Cảnh Báo", MessageBoxButtons.YesNo) != DialogResult.Yes) e.Cancel = true; } } } } 5.3.4 Giao diện quản lý học viên using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; 58 using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace QLHeThongDayGuitar { public partial class frmQLHocVien : Form { public bool isExit = true; public frmQLHocVien() { InitializeComponent(); } private void frmQLHocVien_Load(object sender, EventArgs e) { // TODO: This line of code loads data into the 'quanLyDayGuitarDataSet.HOCVIEN' table You can move, or remove it, as needed this.hOCVIENTableAdapter.Fill(this.quanLyDayGuitarDataSet.HOCVIEN); } private void buttonHVMoi_Click(object sender, EventArgs e) { hOCVIENBindingSource.AddNew(); } private void buttonThemHV_Click(object sender, EventArgs e) { hOCVIENBindingSource.EndEdit(); hOCVIENTableAdapter.Update(quanLyDayGuitarDataSet.HOCVIEN); MessageBox.Show("Thêm thành công!"); } private void buttonSuaHV_Click(object sender, EventArgs e) 59 { hOCVIENBindingSource.EndEdit(); hOCVIENTableAdapter.Update(quanLyDayGuitarDataSet.HOCVIEN); MessageBox.Show("Sửa thành công!"); } private void buttonXoaHV_Click(object sender, EventArgs e) { hOCVIENBindingSource.RemoveCurrent(); MessageBox.Show("Xóa thành cơng!"); } private void frmQLHocVien_FormClosed(object sender, FormClosedEventArgs e) { if (isExit) Application.Exit(); } private void buttonThoat_Click(object sender, EventArgs e) { frmTrangChu f = new frmTrangChu(); f.Show(); this.Hide(); } private void frmQLHocVien_FormClosing(object sender, FormClosingEventArgs e) { if (isExit) { if (MessageBox.Show("Bạn muốn chương trình ?", "Cảnh Báo", MessageBoxButtons.YesNo) != DialogResult.Yes) e.Cancel = true; } } } } 60 5.3.5 Giao diện quản lý lớp using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace QLHeThongDayGuitar { public partial class frmQLLop : Form { public bool isExit = true; public frmQLLop() { InitializeComponent(); } private void frmQLLop_Load(object sender, EventArgs e) { // TODO: This line of code loads data into the 'quanLyDayGuitarDataSet.LOP' table You can move, or remove it, as needed this.lOPTableAdapter.Fill(this.quanLyDayGuitarDataSet.LOP); } private void buttonLopMoi_Click(object sender, EventArgs e) { lOPBindingSource.AddNew(); } private void buttonThemHV_Click(object sender, EventArgs e) { 61 lOPBindingSource.EndEdit(); lOPTableAdapter.Update(quanLyDayGuitarDataSet.LOP); MessageBox.Show("Thêm thành công!"); } private void buttonSuaHV_Click(object sender, EventArgs e) { lOPBindingSource.EndEdit(); lOPTableAdapter.Update(quanLyDayGuitarDataSet.LOP); MessageBox.Show("Sửa thành công!"); } private void buttonXoaHV_Click(object sender, EventArgs e) { lOPBindingSource.RemoveCurrent(); MessageBox.Show("Xóa thành cơng!"); } private void frmQLLop_FormClosed(object sender, FormClosedEventArgs e) { if (isExit) Application.Exit(); } private void buttonThoat_Click(object sender, EventArgs e) { frmTrangChu f = new frmTrangChu(); f.Show(); this.Hide(); } private void frmQLLop_FormClosing(object sender, FormClosingEventArgs e) { if (isExit) { if (MessageBox.Show("Bạn muốn chương trình ?", "Cảnh Báo", MessageBoxButtons.YesNo) != DialogResult.Yes) e.Cancel = true; 62 } } } } 63 CHƯƠNG KIỂM THỬ 6.1 Văn chiến lược kế hoạch kiểm thử 6.1.1 Các công đoạn kiểm thử Các công đoạn kiểm thử Kiểm thử modul Khoảng thời gian thực ngày Kiểm thử tích hợp ngày Kiểm thử hệ thống ngày Kiểm thử nghiệm thu ngày Kiểm thử alpha ngày Kiểm thử beta ngày Bảng 6.1: Bảng công đoạn kiểm thử 6.1.2 Chuẩn bị môi trường kiểm thử Đầu vào Kế hoạch dự án, tài liệu mô tả nghiệp vụ Công việc Kết -Xây dựng công cụ tạo Môi trường kiểm thử liệu sẵn sàng -Tạo liệu kiểm tra hệ thống cho chương trình/ cơng cụ kiểm thử -Xây dựng môi trường phần cứng -Xây dựng môi trường phần mềm Bảng 6.2: Bảng chuẩn bị môi trường kiểm thử 6.1.3 Thiết kế kiểm tra Đầu vào Công việc Kết 64 Tài liệu, prototype (Nếu -Phân tích yêu cầu Tình kiểm thử có) -Lập tình kiểm phê duyệt thử Bảng 6.3: Bảng thiết kế kiểm tra 6.1.4 Thực kiểm thử Đầu vào Kế hoạch kiểm thử, tình kiểm thử, mơi trường kiểm thử sẵn sàng Công việc - Tạo liệu mô - Thực kiểm thử theo tình kiểm thử - Ghi nhận lỗi Kết - Báo cáo kết kiểm thử - Tình kiểm thử cập nhật (nếu có) Bảng 6.4: Bảng thực kiểm thử 6.1.5 Kế hoạch kiểm thử Modul Đăng nhập Mô tả Thời gian thực Người dùng nhập tài khoản mật Người dùng nhập sai tài khoản mật Người dùng nhập tài khoản không nhập mật Người dùng nhập không nhập tài khoản mật Người dùng nhập tài khoản sai mật 65 Người dùng nhập tài khoản mật vượt số lượng kí tự cho phép Người dùng nhập thiếu số lượng kí tự tài khoản mật cho phép Bảng 6.5: Bảng kế hoạch kiểm thử 6.2 Testcase Test case ID Thêm Giảng Viên 01 Thêm Giảng Viên 02 Large Small function function (Chức (Chức năng nhỏ) lớn) Pre Test Operation Condition (Hoạt động thử (Điều kiện nghiệm) trước) Expected Actual Result Result (Kết (Kết dự kiến) thực tế) Hiển thị P form Kiểm tra hiển thị confirm trước thêm Nhấn phím tab Thứ tự P tab từ xuống dưới, từ trái sang phải 66 Thêm Giảng Viên 03 Vị trí Form hiển thị P form hình Thêm Giảng Viên 04 Thay đổi Khơng thể thay P kích thước đổi kích thước form form Thêm Giảng Viên 05 Di chuyển Form di P form chuyển Thêm Giảng Viên 06 Xem trạng Trạng thái nút P thái thêm hoạt động nút form Thêm Giảng Viên 07 Xem Các nhãn nút P trường có form: - Mã giảng viên form - Tên giảng viên - Mã lớp - Số điện thoại - Địa - Ngày sinh - Nút: Thêm Thêm Giảng Viên - Xem Có sẵn trống P văn 67 08 Thêm Giảng Viên 09 Thêm Giảng Viên 10 Thêm Giảng Viên 11 mặc định Kiểm tra Chưa hủy bỏ nhập thao tác thông tin thêm Thao tác P hồn thành Đã nhập Hiện dịng P thơng tin thơng báo: “ Bạn có muốn hủy” Kiểm tra Chưa xác nhận nhập thêm thông tin Thêm không P thành công yêu cầu nhập thông tin Thêm Giảng Viên 12 Nhập Thêm không P thông tin thành công yêu cầu nhập không đầy thêm thông tin đủ Thêm Giảng Viên 13 Nhập đầy Thêm P đủ thông thành công tin Thêm Giảng Viên 14 Kiểm tra Lưu Hiển thị liệu P lưu vào ứng dụng lưu Database sở liệu Thêm Giảng Viên 15 Lưu không nhập liệu Lưu không P thành công, yêu cầu nhập liệu 68 Thêm Giảng Viên 16 Kiểm tra Văn Lưu thành công P trùng lặp không ô trùng lặp văn Thêm Giảng Viên 17 Văn Lưu không P trùng lặp thành công yêu cầu nhập lại Thêm Giảng Viên 18 Thêm Giảng Viên 19 Kiểm tra nhập tất trường mức tối thiểu, tối đa kí tự Nhập Yêu cầu nhập P chưa đến lại đầy đủ mức mức tối yêu cầu thiểu Nhập Yêu cầu nhập P mức tối đa lại đến mức yêu cầu Bảng 6.6: Bảng testcase 69 KẾT LUẬN Như báo cáo đưa nhằm mục đích giải vướng mắc trên, giúp cho công việc quản lý trở nên đơn giản, hiệu xác việc tự động hóa q trình quản lý yếu tố liên quan Khơng mà cịn giúp cho u cầu người dùng thực nhanh chóng, xác đầy đủ, việc tra cứu thông tin kho liệu trở lên thuận tiện Một lần nữa, em xin chân thành cảm ơn cô Lê Thị Trang Linh góp ý giúp em có báo cáo hồn chỉnh ln mong nhận đóng góp thầy bạn Sau cùng, em xin kính chúc thầy cô Khoa Công Nghệ Thông Tin dồi sức khỏe, niềm tin để tiếp tục thực sứ mệnh cao đẹp truyền đạt kiến thức cho hệ mai sau 70

Ngày đăng: 12/06/2023, 09:45

Tài liệu cùng người dùng

Tài liệu liên quan