Báo cáo Kỹ thuật phần mềm
Báo cáo Kỹ thuật phần mềm Nhóm GD2K MỤC LỤC LỜI NÓI ĐẦU I. TÌM HIỀU YÊU CẦU 1.1 Phương pháp nghiên cứu tài liệu, bản mẫu. 1.2 Đặc tả yêu cầu. 1.2.1 Đặc tả yêu cầu thực tế. 1.2.2 Đặc tả chức năng phần mềm. 1.2.3 Đặc tả yêu cầu phi chức năng. II. PHÂN TÍCH HỆ THỐNG. 2.1 Sơ đồ phân cấp chức năng FD. 2.2 Biểu đồ luồng dữ liệu DFD. .2.1 DFD mức ngữ cảnh. .2.2 DFD mức đỉnh. .2.3 DFD mức dưới đỉnh. III. THIẾT KẾ HỆ THỐNG 3.1 Thiết kế cơ sở dữ liệu 3.1.1 Phân tích yêu cầu. 3.1.2 Nhận diện thực thể. 3.1.3. Sơ đồ thực thể liên kết 3.1.4 Nhận diện khóa chính. 3.1.5 Các giả thiết phụ thuộc hàm. 3.1.6 Chuẩn hóa cơ sở dữ liệu. 3.1.7 Sơ đồ thực thể liên kết (ERD) 3.1.8 Khai báo phạm vi các thuộc tính. 3.1.9 Các quy tắc đảm bảo toàn vẹn dữ liệu. 3.2 Lưu đồ thuật toán một số chức năng cơ bản. IV TRIỂN KHAI 4.1 Môi trường phát triển, công cụ xây dựng CSDL và ngôn ngữ lập trình. 4.2 Phân công công việc. V TÀI LIỆU NGƯỜI DÙNG 5.1 Hướng dẫn cài đặt. 5.2 Hướng dẫn sử dụng. VI. KẾT LUẬN VÀ KIẾN NGHỊ CHO MÔN HỌC 1 Báo cáo Kỹ thuật phần mềm Nhóm GD2K LỜI NÓI ĐẦU Trong những năm gần đây ngành công nghệ thông tin nói chung và kĩ thuật phần mềm nói riêng đã có những bước phát triển mạnh mẽ. Các phần mềm ngày càng được ứng dụng rộng rãi trong mọi lĩnh vực của cuộc sống mà trong đó các phần mềm quản lý đã đặc biệt chứng tỏ được tính ưu việt và tiện ích của mình. Sự ra đời của các phần mềm quản lý đã góp phần quan trọng giải quyết vấn đề quản lý nhân lực mà một ví dụ cụ thể là quản lý sinh viên các trường đại học. Với các trường đại học lớn như Đại học Bách Khoa Hà Nội việc quản lý thông tin, xử lý học tập với hàng chục ngàn sinh viên thực sự sẽ mất rất nhiều thời gian và công sức nếu thiếu đi những phần mềm quản lý. Nhưng với những phần mềm quản lý hiện nay các cán bộ đào tạo chỉ cần vài thao tác đơn giản là có thể tìm được những thông tin mong muốn trong khoảng thời gian rất ngắn và rất chính xác. Với những lý do đó nhóm sinh viên GD2K chọn mảng đề tài Quản lý sinh viên cho bài tập lớn môn Kỹ thuật phần mềm với mong muốn với những kiến thức và kinh nghiệm có được sau khi hoàn thành bài tập lớn này chúng em sẽ có thể áp dụng được vào các công việc của mình sau này đặc biệt liên quan đến vấn đề quản lý. Trong phạm vi bài tập lớn này chúng em sẽ xây dựng phần mềm quản lý sinh viên với những chức năng cơ bản là quản lý thông tin sinh viên, xử lý kết quả học tập và các báo cáo sử dụng hai công cụ chủ yếu là Microsoft Visual Basic 6.0 và Microsoft Access 2003. Đơn vị áp dụng: khoa Điện Tử-Viễn Thông, trường Đại học Bách Khoa Hà Nội. Địa chỉ: tầng 4 nhà C9, trường Đại học Bách Khoa HN, số1 Đại Cồ Việt. Số điện thoại: 04 8692242 Email: http://fet.hut.edu.vn Phương pháp phát triển: do đây chỉ là một dự án nhỏ, yêu cầu trong phạm vi bài tập lớn được thực hiện trong một kì học với những kiến thức được cung cấp sau mỗi tuần học chúng em xin lựa chọn phương pháp phát triển theo mô hình tuyến tính. 2 Phân tích Thiết kế Lập trình Kiểm thử Báo cáo Kỹ thuật phần mềm Nhóm GD2K I. TÌM HIỂU YÊU CẦU Trong quá trình thực hiện xây dựng phần mềm khâu đầu tiên là tìm hiểu nghiên cứu yêu cầu của người sử dụng. Nhóm GD2K chúng em lựa chọn phương pháp tìm hiểu yêu cầu của người sử dụng là nghiên cứu tài liệu có sẵn trên cơ sở chính những tài liệu học tập của các thành viên trong nhóm. 1.1 Phương pháp nghiên cứu tài liệu, bản mẫu. Phương pháp nghiên cứu các bản mẫu có trước cho phép tìm hiểu sâu hơn về những yêu cầu cụ thể của bài toán với từng chức năng của hệ thống. Tên tài liệu: Danh sách sinh viên Bản mẫu: DANH SÁCH SINH VIÊN LỚP ĐIỆN TỬ 3 K50 STT SHSV Họ và tên Ngày sinh Địa Chỉ Ghi chú 01 20050062 Ngô Nhật Anh 02 20050137 Chử Xuân Bách 03 20050250 Hol ChanTha 04 20050323 Phạm Công Chương 05 20050548 Đường Quốc Dũng 06 20050570 Nguyễn Anh Dũng(BT) 07 20050717 Bùi Nguyên Đạt 08 20050872 Nguyễn Công Đức 09 20050960 Phạm Trường Giang 10 20040968 Đỗ Sơn Hải 11 20051072 Nguyễn Hoàng Hải 12 20051085 Nguyễn Thanh Hải 13 20051128 Bùi Thu Hằng 14 20051232 Nguyễn Trí Tuấn Hiệp 15 20051302 Đỗ Duy Hoàn 16 20051379 Ung Hong Tech 17 20041454 Nguyễn Đình Hùng 18 20051539 Nguyễn Mạnh Hùng 19 20041637 Nguyễn Quốc Khánh 20 20051760 ThaLang KheMaRa 21 20051837 Vũ Ngọc Kiên 22 20041721 Đỗ Văn Lai 23 20052223 Trương Công Minh 24 20052231 Cáp Trọng Nam 3 Báo cáo Kỹ thuật phần mềm Nhóm GD2K Tên tài liệu: Bảng điểm thi học kỳ Bản mẫu: 4 Báo cáo Kỹ thuật phần mềm Nhóm GD2K Tên tài liệu: Hồ sơ sinh viên Bản mẫu Tên tài liệu: Danh sách nhận học bổng Bản mẫu DANH SÁCH NHẬN HỌC BỔNG Khoá: 50 Lớp: Điện Tử 3 Học kỳ: 2 Năm học: 2007-2008 SHSV Họ và tên Ngày sinh Điểm TBL1 Mức học bổng Số tiền được lĩnh Ghi chú 20050570 Nguyễn Anh Dũng 01/11/1987 9,26 300.000 1.500.000 +0.3 20050960 Phạm Trường Giang 04/02/1987 9,16 300.000 1.500.000 20051128 Bùi Thu Hằng 20/05/1987 9,10 300.000 1.500.000 20052223 Trương Công Minh 24/8/1987 8,70 240.000 1.200.000 20052751 Vũ Thị Phượng 18/04/1987 8,24 240.000 1.200.000 20051320 Đỗ Duy Hoàn 21/06/1987 8,05 240.000 1.200.000 Ngoài ra còn có thể tham khảo thêm các thông tin trên trang web trường đại học trường Đại học Bách Khoa Hà Nội tại địa chỉ http://hut.edu.vn và của khoa Điện Tử Viễn Thông tại địa chỉ http://fet.hut.edu.vn. 5 Báo cáo Kỹ thuật phần mềm Nhóm GD2K 1.2 Đặc tả yêu cầu. 1.2.1 Đặc tả yêu cầu thực tế. Quá trình học tập của mỗi sinh viên khoa Điện Tử-Viễn Thông được chia làm 2 giai đoạn: giai đoạn đại cương (2 năm đầu) và giai đoạn chuyên nghành (3 năm cuối). Ở mỗi giai đoạn có những đặc thù riêng, ví dụ như phần lớn các môn đại cương là do các khoa khác trong trường phụ trách còn các kỳ chuyên ngành hầu hết là giảng viên khoa Điện Tử-Viễn Thông đảm nhận. Trong phương pháp tính điểm tốt nghiệm đang áp dụng điểm trung bình các kỳ đại cương và chuyên nghành sẽ được nhân hệ số khác nhau do vậy trong phần mềm quản lý cần phải có các chức năng quản lý điểm của các kỳ học đại cương, chuyên nghành riêng, tránh sự nhầm lẫn trong khâu tính toán điểm tốt nghiệp sau này. Một đặc thù nữa ở khoa Điện Tử-Viễn Thông là sang kỳ 9, tức là năm cuối sinh viên sẽ được đăng ký để chọn các chuyên ngành hẹp là: Điện tử Viễn Thông, Điện Tử Tin học, Điện Tử Y Sinh và Điện tử Hàng Không. Hiện nay trường Đại học Bách Khoa Hà Nội đã bắt đầu áp dụng chế độ học tín chỉ, ở khoa Điện Tử Viễn thông năm nay có K52 đã áp dụng hình thức học này với các cách tính điểm, quản lý lớp, xử lý học tập theo quy chế mới. Với những đặc thù đó đỏi hỏi phần mềm quản lý sinh viên áp dụng cho khoa phải tổng hợp được tất cả các yêu cầu đó, đưa ra các chức năng quản lý cụ thể, hiệu quả, phù hợp với từng đặc điểm, giai đoạn, với từng khóa học khác nhau để mang lại kết quả chính xác và hiệu quả tối đa. Như đã nói ở trên, trong phạm vi bài tập lớn và những kiến thức còn hạn chế, nhóm GD2K chỉ mới xây dựng được một phần mềm quản lý sinh viên với những chức năng cơ bản nhất. Những chức năng quản lý phức tạp, nâng cao sẽ được nhóm tiếp tục tìm hiểu và hoàn thiện trong thời gian tới. 1.2.2 Đặc tả chức năng của phần mềm. Một hệ thống quản lý sinh viên cho khoa Điện tử - Viễn thông cần các thông tin sau: Số hiệu sinh viên, Họ và tên sinh viên, Khoá, Tên lớp, Mã lớp, Ngày tháng năm sinh, Giới tính, Dân tộc, Tôn giáo, Chứng minh thư nhân dân, Đối tượng, Quê quán, Hộ khẩu thường trú, Địa chỉ liên hệ, Họ tên bố, Nghề nghiệp của bố, Họ tên mẹ, Nghề nghiệp của mẹ, Năm tốt nghiệp, Xếp loại tốt nghiệp PTTH, Năm vào trường, Số báo danh, Điểm vào trường, Ngày vào Đoàn, Ngày vào Đảng, Lớp trước khi phân ngành, Ngành học, Học kì đại cương, Mã môn đại cương, Môn học đại cương, Điểm đại cương lần 1, Điểm đại cương lần 2, Điểm đại cương lần cao nhất, Học kì chuyên ngành, Mã môn chuyên ngành, Môn học chuyên ngành, Điểm chuyên ngành lần 1, Điểm chuyên ngành lần 2, Điểm chuyên ngành lần cao nhất, Số đơn vị học trình. 6 Báo cáo Kỹ thuật phần mềm Nhóm GD2K Yêu cầu : Các chức năng chính: Xử lý thông tin về sinh viên, xử lý kết quả học tập của từng sinh viên và xuất ra các loại báo cáo… Quản lý tất cả các thông tin của từng sinh viên trong mỗi lớp thuộc từng khoá trong Khoa, khi cần có thể tìm kiếm bất kì thông tin nào của một sinh viên về: thông tin bản thân, gia đình, lớp, điểm các môn học thuộc từng kì… Cho phép nhập mới, bổ sung thông tin của một sinh viên bất kì vào lớp. Quản lý điểm, nhập vào điểm và có khả năng lọc ra danh sách sinh viên đạt học bổng, sinh viên thi lại, học lại dựa vào các điều kiện cho trước. Xuất ra các loại báo cáo khi cần thiết như: Bảng điểm, danh sách lớp, Hồ sơ sinh viên, danh sách học lại, danh sách thi lại… 1.1.3 Đặc tả yêu cầu phi chức năng • Tiêu chí 1 : Không quá đơn giản nhưng dễ sử dụng, chứa đầy đủ các thông tin cần thiết, tránh các thao tác rườm rà, sự dư thừa dữ liệu và phải phục vụ tối đa cho mục đích quản lý sinh viên. • Tiêu chí 2 : Các quá trình xử lý đảm bảo nhanh chóng, tiện lợi và thật chính xác. Cập nhật đầy đủ các chức năng cần thiết, các thông tin tổng hợp phục vụ cho công việc quản lý theo từng giai đoạn cụ thể. • Tiêu chí 3 : Đáp ứng được tối đa yêu cầu của người sử dụng và có khả năng nâng cấp khi phát sinh yêu cầu mới. • Tiêu chí 4 : Giao diện đẹp mắt và thân thiện với người dùng. Có hướng dẫn cài đặt và hướng dẫn sử dụng chi tiết, cụ thể, hướng dẫn xử lý khi xảy ra một số sự cố có thể xảy ra 7 Báo cáo Kỹ thuật phần mềm Nhóm GD2K II. PHÂN TÍCH HỆ THỐNG 2.1 Sơ đồ phân cấp chức năng – FD 8 Báo cáo Kỹ thuật phần mềm Nhóm GD2K 2.2 Biểu đồ luồng dữ liệu 2.2.1 DFD mức ngữ cảnh 2.2.2 DFD mức đỉnh 9 Báo cáo Kỹ thuật phần mềm Nhóm GD2K 2.2.3 DFD mức dưới đỉnh 2.2.3.1 DFD mức 2-mức dưới đỉnh của chức năng 1 (quản lý thông tin) 10 [...].. .Báo cáo Kỹ thuật phần mềm Nhóm GD2K 11 Báo cáo Kỹ thuật phần mềm Nhóm GD2K 2.2.3.2 DFD mức 2-mức dưới đỉnh của chức năng 2 (Xử lý học tập) 2.2.3.3 DFD mức 2-mức dưới đỉnh của chức năng 3 (Quản lý báo cáo) 12 Báo cáo Kỹ thuật phần mềm Nhóm GD2K 2.2.3.4 DFD mức 3-phân rã của chức năng 1.1 (Quản lý thông tin cá nhân sinh... ghi vào bảng THÔNGTINSV thì MALOP phải được xoá trên cột MALOP trong bảng LOP… 3.2 LƯU ĐỒ THUẬT TOÁN MỘT SỐ CHỨC NĂNG CƠ BẢN 3.2.1 Nhập thông tin sinh viên: 31 Báo cáo Kỹ thuật phần mềm Nhóm GD2K 3.2.2 Tìm kiếm SV 32 Báo cáo Kỹ thuật phần mềm Nhóm GD2K 3.2.3 Nhập điểm - Nhập điểm lần 1: 33 Báo cáo Kỹ thuật phần mềm Nhóm GD2K - Nhập điểm lần 2: 34 3.2.4 Xét học bổng Bắt đầu Nhập thông tin Tìm DSSV của... Số hiệu sinh viên thông qua thuộc tính không khoá là Mã lớp nên chưa ở dạng 3NF Ta tách thành bảng: THÔNGTINSV và LỚP Ta có các bảng ở dạng 3NF sau: 24 Báo cáo Kỹ thuật phần mềm Nhóm GD2K 25 Báo cáo Kỹ thuật phần mềm Nhóm GD2K 26 Báo cáo Kỹ thuật phần mềm Nhóm GD2K 3.1.6.4 Chuẩn hóa dạng BCNF Trong các bảng MÔNĐC, MÔNCN, THÔNGTINSV, LỚP: các khoá chính đều là khoá đơn nên các bảng này đã ở dạng BCNF... của bảng chưa chuẩn hoá là: SHSV Để chuyển thành 1NF ta sử dụng phương pháp tách nhóm lặp Sau khi tách các thuộc tính lặp ta thu được bảng: ĐIỂMĐC, ĐIỂMCN, THÔNGTINSV 20 Báo cáo Kỹ thuật phần mềm Nhóm GD2K 21 Báo cáo Kỹ thuật phần mềm Nhóm GD2K 3.1.6.2 Chuẩn hóa dạng 2NF (tách các phụ thuộc hàm vào từng tập con của khóa chính) Trong bảng ĐIỂMĐC: Môn học đại cương, học kì đại cương, Số đơn vị học trình... tách thành bảng: ĐIỂMCN, MÔNCN Trong bảng THÔNGTINSV: khóa chính là SHSV – khoá đơn, các thuộc tính không khoá đều phụ thuộc hàm đầy đủ vào khoá chính nên đã ở dạng 2NF 22 Báo cáo Kỹ thuật phần mềm Nhóm GD2K 23 Báo cáo Kỹ thuật phần mềm Nhóm GD2K 3.1.6.3 Chuẩn hóa dạng 3NF Trong bảng ĐIỂMĐC: mọi thuộc tính không khoá là Điểm đại cương lần1, Điểm đại cương lần 2, Điểm đại cương lần cao nhất đều phụ thuộc... thông tin cá nhân sinh viên) 2.2.3.5 tin lớp học) DFD mức 3-phân rã của chức năng 1.2 (Quản lý thông 13 Báo cáo Kỹ thuật phần mềm Nhóm GD2K 2.2.3.6 DFD mức 3-phân rã của chức năng 1.3 (Quản lý thông tin môn học) 2.2.3.7 DFD mức 3-phân rã của chức năng 1.4 (Quản lý điểm) 14 Báo cáo Kỹ thuật phần mềm Nhóm GD2K III THIẾT KẾ HỆ THỐNG 3.1 THIẾT KẾ CƠ SỞ DỮ LIỆU 3.1.1 Phân tích các yêu cầu (đã thực hiện... lần cao nhất Số đơn vị học trình Nhóm GD2K HKDC MAMONDC MONDC DIEMDC1 DIEMDC2 DIEMDCCN HKCN MAMONCN MONCN DIEMCN1 DIEMCN2 DIEMCNCN SODVHT 3.1.3 Sơ đồ thực thể liên kết 16 Báo cáo Kỹ thuật phần mềm Nhóm GD2K 17 Báo cáo Kỹ thuật phần mềm Nhóm GD2K 3.1.4 Nhận diện khóa chính Khóa chính của bảng chưa chuẩn hóa là SHSV do các thuộc tính còn lại đều phụ thuộc hàm vào thuộc tính này 3.1.5 Các giả thiết phụ... đồng thời nó cũng là khoá ứng cử nên đã ở dạng BCNF Vậy các bảng ở dạng chuẩn hóa 3NF ở trên cũng chính là các bảng ở dạng chuẩn hoá BCNF 3.1.7 Sơ đồ liên kết thực thể (ERD) 27 Báo cáo Kỹ thuật phần mềm Nhóm GD2K 3.1.8 Khai báo phạm vi của mỗi thuộc tính Sau khi chuẩn hoá dữ liệu, ta lập từ điển dữ liệu cho các thuộc tính: Tên đầy đủ của thuộc tính Tên viết tắt của thuộc tính Kiểu dữ liệu Khoảng giá... Nguyễn Anh Dũng THONGTINSV 28 Báo cáo Kỹ thuật phần mềm Nhóm GD2K Nghề nghiệp bố NNBO Nvarchar 25÷40 Bộ Đội THONGTINSV Họ và tên mẹ HTME Nvarchar 25÷30 Võ Thị Hồng Ngọc THONGTINSV Nghề nghiệp mẹ NNME Nvarchar 25÷40 Công nhân THONGTINSV Năm tốt nghiệp NAMTN Datetime 2005 THONGTINSV Xếp loại TN PTTH XLPTTH Nvarchar Giỏi THONGTINSV Năm vào trường NAMVT Datetime 2005 THONGTINSV Số báo danh SBD Nvarchar BKA0168... nghiệp Xếp loại tốt nghiệp PTTH Năm vào trường Số báo danh Điểm vào trường Ngày vào Đoàn Ngày vào Đảng Lớp trước khi phân ngành Ngành học Tên viết tắt SHSV KHOA TENLOP MALOP TENSV NGAYSINH GIOITINH DANTOC TONGIAO CMTND DOITUONG QUEQUAN HKTHUONGTRU DCLIENHE HTBO NNBO HTME NNME NAMTN XLPTTH NAMVT SBD ĐIEMDH NVDOAN NVDANG LOPTPN NGANHHOC 15 Báo cáo Kỹ thuật phần mềm Học kì đại cương Mã môn đại cương Môn học . đỉnh 9 Báo cáo Kỹ thuật phần mềm Nhóm GD2K 2.2.3 DFD mức dưới đỉnh 2.2.3.1 DFD mức 2-mức dưới đỉnh của chức năng 1 (quản lý thông tin) 10 Báo cáo Kỹ thuật phần mềm Nhóm GD2K 11 Báo cáo Kỹ thuật. xảy ra một số sự cố có thể xảy ra 7 Báo cáo Kỹ thuật phần mềm Nhóm GD2K II. PHÂN TÍCH HỆ THỐNG 2.1 Sơ đồ phân cấp chức năng – FD 8 Báo cáo Kỹ thuật phần mềm Nhóm GD2K 2.2 Biểu đồ luồng dữ. Trương Công Minh 24 20052231 Cáp Trọng Nam 3 Báo cáo Kỹ thuật phần mềm Nhóm GD2K Tên tài liệu: Bảng điểm thi học kỳ Bản mẫu: 4 Báo cáo Kỹ thuật phần mềm Nhóm GD2K Tên tài liệu: Hồ sơ sinh