Chương 1: ĐẶT VẤN ĐỀ 1.1. Đặt vấn đề Phát triển từ mô hình Cao đẳng Cộng đồng, Trường Đại học Trà Vinh đặc biệt chú trọng tạo quan hệ gắn kết với xã hội nhằm nắm bắt nhu cầu lao động trong xã hội, kịp thời cập nhật thông tin phong phú, đa dạng về các lĩnh vực kinh tế xã hội, khoa học công nghệ từ thực tiễn,… từ đó đáp ứng tốt nhu cầu học tập của xã hội. Hiện tại, trường đã gắn kết với hơn 200 doanh nghiệp, nhà tuyển dụng lao động trong và ngoài tỉnh; đào tạo theo hợp đồng doanh nghiệp trong nhiều lĩnh vực như: may mặc, giày da, chế biến thực phẩm, cơm dừa,…; vận động các doanh nghiệp, hội đồng hương tham gia hỗ trợ quá trình học tập của sinh viên thông qua hình thức cấp các suất học bổng hàng năm. Đối với những sinh viên theo học tại trường ngoài việc hỗ trợ học bổng khuyến học theo từng học kỳ, hằng năm nhà trường còn nhận được khoản tiền hỗ trợ từ nhà tài trợ hỗ trợ những sinh viên có hoàn cảnh khó khăn. Việc cấp học bổng từ nhà tài trợ do phòng Công tác Sinh viên học sinh đảm nhiệm. Vấn đề đặt ra là việc cấp học bổng này vẫn chưa được tin học hóa, các tài liệu liên quan đến việc cấp học bổng chủ yếu chỉ lưu trữ trên các tập tin đơn giản và trên giấy nên rất khó khăn trong việc tìm kiếm thông tin liên quan khi cần thiết. Để góp phần đáp ứng nhu cầu trên cũng như hoàn thành tốt nhiệm vụ học tập nên em quyết định chọn và thực hiện đề tài xây dựng phần mềm quản lý việc cấp phát học bổng cho học sinh sinh viên Trường Đại Học Trà Vinh. 1.2. Mục tiêu của đề tài Tạo ra một ứng dụng giúp công việc quản lý cấp phát học bổng cho sinh viên học sinh của trường được nhanh chóng, chính xác, chặt chẽ, cập nhật và tra cứu kịp thời. Bản thân có thể ứng dụng những kiến thức đã học về phân tích thiết kế hệ thống thông tin và kỹ năng lập trình vào thực tế, xây dựng phần mềm ứng dụng trong một môi trường thực tế. 1.3 Phạm vi nghiên cứu đề tài Phạm vi nghiên cứu của em về đề tài chỉ giới hạn trong phạm vi cấp học bổng cho sinh viên theo tiêu chí kết hợp là tên học bổng kết hợp với tên khoa, bậc học và tên diện.
Trang 11.1 Đặt vấn đề
Phát triển từ mô hình Cao đẳng Cộng đồng, Trường Đại học Trà Vinh đặc biệt chú trọng tạo quan hệ gắn kết với xã hội nhằm nắm bắt nhu cầu lao động trong xã hội, kịp thời cập nhật thông tin phong phú, đa dạng về các lĩnh vực kinh tế - xã hội, khoa học công nghệ từ thực tiễn,… từ đó đáp ứng tốt nhu cầu học tập của xã hội Hiện tại, trường đã gắn kết với hơn 200 doanh nghiệp, nhà tuyển dụng lao động trong và ngoài tỉnh; đào tạo theo hợp đồng doanh nghiệp trong nhiều lĩnh vực như: may mặc, giày da, chế biến thực phẩm, cơm dừa,…; vận động các doanh nghiệp, hội đồng hương tham gia hỗ trợ quá trình học tập của sinh viên thông qua hình thức cấp các suất học bổng hàng năm
Đối với những sinh viên theo học tại trường ngoài việc hỗ trợ học bổng khuyến học theo từng học kỳ, hằng năm nhà trường còn nhận được khoản tiền hỗ trợ từ nhà tài trợ hỗ trợ những sinh viên có hoàn cảnh khó khăn Việc cấp học bổng từ nhà tài trợ do phòng Công tác Sinh viên học sinh đảm nhiệm Vấn đề đặt ra là việc cấp học bổng này vẫn chưa được tin học hóa, các tài liệu liên quan đến việc cấp học bổng chủ yếu chỉ lưu trữ trên các tập tin đơn giản và trên giấy nên rất khó khăn trong việc tìm kiếm thông tin liên quan khi cần thiết Để góp phần đáp ứng nhu cầu trên cũng như hoàn thành tốt nhiệm vụ học tập nên em quyết định chọn và thực hiện đề tài xây dựng phần mềm quản lý việc cấp phát học bổng cho học sinh - sinh viên Trường Đại Học Trà Vinh
1.2 Mục tiêu của đề tài
- Tạo ra một ứng dụng giúp công việc quản lý cấp phát học bổng cho sinh viên học sinh của trường được nhanh chóng, chính xác, chặt chẽ, cập nhật và tra cứu kịp thời
- Bản thân có thể ứng dụng những kiến thức đã học về phân tích thiết kế hệ thống thông tin và kỹ năng lập trình vào thực tế, xây dựng phần mềm ứng dụng trong một môi trường thực tế
1.3 Phạm vi nghiên cứu đề tài
- Phạm vi nghiên cứu của em về đề tài chỉ giới hạn trong phạm vi cấp học bổng cho sinh viên theo tiêu chí kết hợp là tên học bổng kết hợp với tên khoa, bậc học và tên diện
Trang 2Chương 2: CƠ SỞ LÝ THUYẾT2.1 Tổng quan về cơ sở dữ liệu
2.1.1 Cơ sở dữ liệu [2 Trang 5, 6]
- Một tập hợp có cấu trúc của dữ liệu có liên quan với nhau được lưu trữ trong máy tính để thỏa mãn yêu cầu khi khai thác đồng thời của nhiều người sử dụng hay nhiều chương trình ứng dụng với nhiều mục đích khác nhau
- Ưu điểm của cơ sở dữ liệu:
+ Giảm sự trùng lập dữ liệu xuống mức thấp nhất, đảm bảo tính nhất quán và toàn vẹn dữ liệu
+ Đảm bảo dữ liệu có thể truy xuất theo nhiều cách khác nhau
+ Khả năng chia sẽ dữ liệu tốt
- Những vấn đề cần giải quyết khi chọn cơ sở dữ liệu
+ Tính chủ quyền của dữ liệu
+ Tính bảo mật và quyền khai thác thông tin của người sử dụng
+ Giải quyết tranh chấp dữ liệu
+ Khôi phục dữ liệu khi có sự cố
2.1.2 Hệ quản trị cơ sở dữ liệu (Database Management System) [2 Trang 7, 8, 9]
- Tập hợp các chương trình cho phép người sử dụng định nghĩa, duy trì, khai thác
và quản lý cơ sở dữ liệu
+ Các tính năng của hệ quản trị cơ sở dữ liệu: chia sẽ dữ liệu; hạn chế những truy cập không cho phép; cung cấp nhiều giao diện; đảm bảo các ràng buộc toàn vẹn; khả năng sao lưu dự phòng khi gặp sự cố
2
Trang 3- Hệ cơ sở dữ liệu là một cơ sở dữ liệu cùng với một “Hệ quản trị cơ sở dữ liệu” truy nhập trên cơ sở dữ liệu đó.
- Ngôn ngữ cơ sở dữ liệu
+ Ngôn ngữ định nghĩa dữ liệu (DDL – Data Definition Language)
Định nghĩa lược đồ dữ liệu
+ Ngôn ngữ thao tác dữ liệu ( DML – Data Manipulation Language)
Cập nhật khai thác dữ liệu
+ Ngôn ngữ điều khiển dữ liệu (DCL – Data Control Language)
Quản lý quyền khai thác cơ sở dữ liệu
2.1.4 Giới thiệu Thủ tục nội tại [5]
- Thủ tục nội tại là một tập hợp chứa các dòng lệnh, các biến và các cấu trúc điều khiển bên trong ngôn ngữ Transaction-SQL dùng để thực hiện một hành động nào đó, tất
cả các nội dung của thủ tục nội tại sẽ được lưu trữ tại cơ sở dữ liệu của Microsoft SQL Server
Trang 4- Các nét đặc trưng của một thủ tục nội tại cũng hoàn toàn giống các thủ tục trong các ngôn ngữ lập trình khác: tên thủ tục nội tại, tham số truyền giá trị vào và tham số đón nhận giá trị trả ra Ngoài ra bên trong một thủ tục nội tại ta cũng được phép gọi thực thi một thủ tục nội tại khác đã có trước đó Phạm vi hoạt động của các thủ tục nội tại do người dùng tạo ra chỉ có tính cục bộ bên trong một cơ sở dữ liệu lưu trữ thủ tục đó.
- Một nét riêng biệt của thủ tục nội tại là nó có thể được gọi thực hiện trong môi trường không phải là Microsoft SQL Server Khi xây dựng giao diện màn hình trên các ngôn ngữ lập trình khác nhau, ta vẫn có thể gọi thực hiện các thủ tục nội tại một cách dễ dàng
- Ngoài ra do thủ tục nội tại được lưu trữ vật lý trong cơ sở dữ liệu của Microsoft SQL Server, nên các thủ tục nội tại sẽ được thực thi khá nhanh bởi vì nội dung bên trong thủ tục nội tại đã được phân tích cú pháp các lệnh khi chúng được tạo mới Lần đầu tiên khi thủ tục nội tại được gọi thực hiện thì nội dung các lệnh bên trong thủ tục nội tại sẽ được biên dịch và lưu lại trên bộ nhớ, kể từ các lần kế tiếp thì thủ tục nội tại sẽ được thực thi càng nhanh hơn (vì các mã lệnh đã được lưu lại trên bộ nhớ) Đây cũng là một trong những lý do mà tại sao chúng ta nên sử dụng thủ tục nội tại trong Microsoft SQL Server
để thực thi các xử lý tính toán
2.1.5 Giới thiệu SQL Server Management Studio Express
SQL Server 2005 có nhiều phiên bản khác nhau, trong đó bản Express là bản thấp nhất, được Microsoft cung cấp miễn phí cho người dùng với mục đích học tập và ứng dụng vào những ứng dụng nhỏ, không yêu cầu cao về các tính năng khác ngoài việc lưu trữ và xử lý đơn giản
4
Trang 52.2.1 Các khái niệm
- Chương trình máy tính là một trình tự các chỉ thị để hướng dẫn máy tính làm việc nhằm hoàn thành một công việc nào đó do con người yêu cầu Phần mềm là một hệ thống các chương trình có thể thực hiện trên máy tính nhằm hỗ trợ các nhà chuyên môn trong từng lĩnh vực chuyên ngành thực hiện tốt nhất các thao tác nghiệp vụ của mình Nhiệm vụ chính yếu của phần mềm là cho phép các nhà chuyên môn thực hiên các công việc của họ trên máy tính dễ dàng và nhanh chóng hơn so với khi thực hiện cùng công việc đó trên thế giới thực Hoạt động của mọi phần mềm là sự mô phỏng lại các hoạt động của thế giới thực trong một góc độ thu hẹp nào đó trên máy tính Quá trình sử dụng một phần mềm chính là quá trình người dùng người dùng thực hiện các công việc trên máy tính để hoàn tất các công việc tương đương trong thế giới thực [4 Trang 5]
- Phần mềm ứng dụng là những phần mềm được dùng để thực hiện một công việc xác định nào đó Phầm mềm ứng dụng có thể chỉ gồm một chương trình đơn giản như chương trình xem ảnh, hoặc một nhóm chương trình cùng tương tác với nhau để thực hiện một công việc nào đó như chương trình xử lí bảng tính, chương trình xử lý văn bản…[4 Trang 7]
2.2.2 Kiến trúc phần mềm [4 Trang 7, 8, 9]
2.2.2.1 Thành phần giao tiếp (giao diện)
- Cho phép tiếp cận các yêu cầu về việc muốn thực hiện và cung cấp các dữ liệu nguồn liên quan đến công việc đó hoặc từ các thiết bị thu nhập dữ liệu (cân, đo…)
- Cho phép trình bài các kết quả của việc thực hiện các yêu cầu cho người dùng (kết quả thực hiện các công việc trên máy tính) hoặc điều khiển hoạt động các thiết
bị điều khiển (đóng mở cửa, bật mở máy…)
- Một cách tổng quát thành phần giao tiếp là hệ thống các hàm chuyên về việc nhập/xuất dữ liệu (hàm nhập/xuất) cùng với hình thức trình bày và tổ chức lưu trữ dữ
Trang 6liệu tương ứng, mục tiêu chính của các hàm này là đưa dữ liệu từ thế giới bên ngoài phần mềm vào bên trong hoặc ngược lại.
2.2.2.2.Thành phần dữ liệu
- Cho phép lưu trữ dữ liệu lại (hàm ghi) các kết quả đã xử lý (việc mượn sách đã được kiểm tra hợp lệ, bảng lương tháng đã được tính) trên bộ nhớ phụ với tổ chức lưu trữ được xác định trước (tập tin có cấu trúc, tập tin nhị phân, cơ sở dữ liệu)
- Cho phép truy xuất lại (hàm đọc) các dữ liệu đã lưu trữ phục vụ cho các hàm xữ lý tương ứng
- Một cách tổng quát thành phần dữ liệu là hệ thống các hàm chuyên về đọc ghi dữ liệu (hàm đọc/ghi) cùng với mô hình tổ chức dữ liệu tương ứng Mục tiêu chính của các hàm này là chuyển đổi dữ liệu giữa bộ nhớ chính và bộ nhớ phụ
2.2.2.3 Thành phần xử lý
- Kiểm tra tính hợp lệ của các dữ liệu nguồn được cung cấp từ người dùng theo các quy trình ràng buộc trong thế giới thực (chỉ cho mượn tối đa 3 quyển sách, mỗi lớp học có tối đa 50 học sinh,…)
- Tiến hành xử lý cho kết quả mong đợi theo quy định tính toán có sẵn trong thế giới thực (quy tắc tính tiền phạt khi trả sách trể, quy tắc trả góp khi mua nhà…)
- Việc xử lý dựa trên dữ liệu nguồn từ người sử dụng cung cấp (tính nghiệm phương trình bậc hai dựa trên các hệ số đã nhập) hoặc dữ liệu lưu trữ đã có sẵn (tính tồn kho tháng dựa trên các phiếu nhập xuất đã lưu trữ…) hoặc cả hai (tính tiền phạt dựa trên ngày trả sách được nhập vào và thông tin về loại sách đã được lưu trữ…) tùy vào xử lý cụ thể Tương tự, việc xử lý cho ra kết quả có thể dùng để xuất cho người dùng xem qua thành phần giao diện, hay cũng có thể lưu trữ lại qua thành phần dữ liệu
- Một cách tổng quát thành phần xử lý là hệ thống các hàm chuyên về xử lý tính toán, biến đổi dữ liệu Các hàm này sẽ dùng dữ liệu nguồn từ các hàm trong thành phần giao diện (hàm nhập) hay thành phần dữ liệu (hàm đọc dữ liệu) kiểm tra tính hợp lệ (hàm kiểm tra) và sau đó tiến hành xử lý (hàm xử lý) nếu cần thiết cho ra kết quả mà sẽ
6
Trang 7và lưu trữ lại qua các hàm trong thành phần dữ liệu (hàm ghi).
2.2.3 Quy trình công nghệ phần mềm [4 Trang 16, 17, 18]
- Để xây dựng được phần mềm có chất lượng quá trình phát triển phải trải qua rất nhiều giai đoạn Mỗi giai đoạn có mục tiêu và kết quả chuyển giao xác định Trình tự thực hiện các giai đoạn này chính là chu kỳ sống của một phần mềm
- Nói cách khác, chu kỳ sống của một phần mềm là khoản thời gian mà trong đó một sản phẩm phần mềm được phát triển, sử dụng và mở rộng cho đến khi sản phẩm phần mềm đó không còn được sử dụng nữa
- Chu kỳ sống của phần mềm chia thành các pha chính như: xác định, phát triển, kiểm thử, bảo trì (vận hành) Phạm vi và thứ tự các pha khác nhau tùy theo từng mô hình
- Bên cạnh đó chúng ta phải biết người đặt hàng muốn gì Các yêu cầu phải được thu thập đầy đủ và được phân tích theo chiều ngang (rộng) và chiều dọc (sâu) Công
cụ sử dụng chủ yếu ở giai đoạn này, là các lược đồ sơ đồ phản ánh rõ các thành phần của
hệ thống và mối liên quan giữa chúng với nhau
Phát triển
- Dựa vào các nội dung đã xác định được, nhóm phát triển phần mềm dùng ngôn ngữ đặc tả hình thức (dựa trên các kiến trúc toán học) hoặc phi hình thức (tựa ngôn ngữ tự nhiên) hoặc kết hợp cả hai để mô tả các yếu tố sau đây của chương trình:
+ Giá trị nhập, giá trị xuất
Trang 8+ Các phép biến đổi
+ Các yêu cầu cần đạt được ở mỗi điểm của chương trình
- Phần đặt tả chỉ quan tâm chủ yếu đến giá trị vào, ra chứ không quan tâm đến cấu trúc và nội dung các thao tác cần thực hiện
- Sau bước thiết kế là bước triển khai các đặc tả chương trình thành một sản phẩm phần mềm dựa trên một ngôn ngữ lập trình cụ thể Trong giai đoạn này các lập trình viên sẽ tiến hành cài đặt các thao tác cần thiết để thực hiện đúng các yêu cầu đã được đặt tả
- Công việc cuối cùng của giai đoạn phát triển là chúng ta cần phải chứng minh tính đúng đắng của chương trình sau khi đã tiến hành cài đặt Tuy nhiên thông thường bước này chúng ta coi chương trình như một hộp đen Vấn đề đặt ra là xây dựng một cách có chủ đích các tập dữ liệu nhập khác nhau để giao cho chương trình thực hiện rồi đưa vào kết quả thu được để đánh giá chương trình Công việc như trên được gọi là kiểm thử chương trình
- Công việc kiểm thử nhằm vào mục đích sau:
+ Kiểm tra phát hiện lỗi chương trình Lưu ý rằng kiểm thử không đảm bảo tuyệt đối tính đúng đắn của chương trình do bản chất quy nạp không hoàn toàn của cách làm
+ Kiểm tra tính ổn định hiệu quả cũng như khả năng tối đa của chương trình + Tùy theo mục đích mà người ta thiết kế các tập dữ liệu thử sao cho các tập
dữ liệu phủ hết các trường hợp cần quan tâm
Bảo trì (Vận hành)
- Công việc quản lý việc triển khai và sử dụng phần mềm cũng là một vấn
đề cần được quan tâm trong quy trình phát triển phần mềm Trong quá trình xây dựng phần mềm, toàn bộ các kết quả phân tích, thiết kế cài đặt và hồ sơ liên quan cần phải được lưu trữ quản lý cẩn thận nhằm đảm bảo cho công việc tiến hành một cách có hiệu quả nhất
và phục vụ cho công việc bảo trì phần mềm về sau
8
Trang 102.2.4 Một số mô hình triển khai khi xây dựng phần mềm
2.2.4.1 Mô hình thác nước
- Mô hình thác nước là một trong những mô hình đầu tiên và phổ biến được
áp dụng trong quá trình phát triển phần mềm Mô hình này chia quá trình phát triển phần mềm thành những giai đoạn tuần tự nối tiếp nhau Mỗi giai đoạn sẽ có một mục đích nhất định Kết quả của giai đoạn trước sẽ là thông tin cần vào cho giai đoạn tiếp theo sau [4 Trang 19]
2.2.4.2 Mô hình bản mẫu phần mềm
- Tương tự mô hình thác nước với việc bổ sung vào các giai đoạn thực hiện phần mềm mẫu ngay khi xác định yêu cầu nhằm mục tiêu phát hiện nhanh các sai sót về yêu cầu Các giai đoạn trong mô hình bản mẫu phần mềm có thể tiến hành lặp đi lặp lại chứ không nhất thiết phải theo trình tự nhất định [4 Trang 25, 26]
2.2.4.3 Mô hình xoắn ốc
- Mô hình này chính là sự kết hợp của mô hình bản mẫu thiết kế và mô hình thác nước được lập lại nhiều lần Ở lần lặp tiếp theo hệ thống sẽ được tìm hiểu và xây dựng hoàn thiện hơn ở lần lập trước đó [4 Trang 27]
- Ở mỗi lần lặp các yêu cầu của người sử dụng sẽ được hiểu ngày càng rõ ràng hơn và các bản mẫu phần mềm cũng ngày một hoàn thiện hơn Ngoài ra ở cuối mỗi lần lặp sẽ có thêm một công đoạn phân tích mức độ rủi ro để quyết định xem có nên đi tiếp theo hướng này nữa không [4 Trang 27]
Để hiện thực được các yêu cầu từ phía khách hàng cần sử dụng các công cụ lập trình để hiện thực
10
Trang 112.3.1 Tổng quan NET Framework
Hình 1 Thành phần trong NET Framework
- Trong thuật ngữ NET Framework, Framework chính là một tập hợp hay thư viện các lớp đối tượng hỗ trợ người lập trình khi xây dựng ứng dụng Có thể coi NET Framework là bộ thư viện dành cho các lập trình viên NET [3 Trang 5]
- Với hơn 5000 lớp đối tượng để gọi thực hiện đủ các loại dịch vụ từ hệ điều hành, chúng ta có thể bắt đầu xây dựng ứng dụng bằng Notepad.exe Nhiều người lầm tưởng rằng các môi trường phát triển phần mềm như Visual Studio 98 hay Visual Studio.NET là tất cả những gì cần để viết chương trình Thực ra, chúng là những phần mềm dùng làm “vỏ bọc” bên ngoài Với chúng, chúng ta sẽ viết được các đoạn lệnh đủ các màu xanh, đỏ; lỗi cú pháp báo ngay khi đang gõ lệnh; thuộc tính của các đối tượng được đặt ngay ở cửa sổ properties, giao diện được thiết kế theo phong cách trực quan… Như vậy, chúng ta có thể hình dung được tầm quan trong của NET Framework Nếu không có cái cốt lõi NET Framework, Visual Studio.NET chỉ là cái vỏ bọc [3 Trang 5]
2.3.2 Ngôn ngữ C#
- C# là ngôn ngữ lập trình hướng đối tượng được thiết kế riêng cho Net Platform,
nó có thể sử dụng để xây dựng các ứng dụng ở dạng dòng lệnh (console), Windows Form hay Web form (nhúng vào các trang ASP.Net) [3 Trang 9]
Trang 122.3.3 Công cụ DotNetBar trong ngôn ngữ C#
- Dotnetbar là điều khiển hỗ trợ người lập trình tạo nên một giao diện người
dùng bắt mắt, hiệu ứng đẹp, cùng những điều khiển được thiết kế sao cho tính tiện dụng đạt cao nhất
Hình 2 Các điều khiển sao khi đã cài DotNetBar vào Microsoft Visual Studio
- Các ưu điểm khi sử dụng công cụ Dotnetbar như: dễ dàng cài đặt, các công cụ gần giống với công cụ đã có hỗ trợ trong Microsoft Visual Studio 2005 nên rất dễ sử dụng
và hiệu chỉnh
2.3.4 Lập trình hướng đối tượng với mô hình 3 lớp (3 layers) [6]
- Thuật ngữ kiến trúc đa tầng nhiều lớp, mỗi lớp sẽ thực hiện một chức năng nào
đó, trong đó mô hình 3 lớp là phổ biến nhất 3 lớp này là gì? 3 lớp bao gồm các lớp sau: lớp Presentation, lớp Business Logic, và lớp Data Access Các lớp này sẽ giao tiếp với nhau thông qua các dịch vụ (services) mà mỗi lớp cung cấp để tạo nên ứng dụng, lớp này cũng không cần biết bên trong lớp kia làm gì mà chỉ cần biết lớp kia cung cấp dịch vụ gì cho mình và sử dụng nó mà thôi
12
Trang 13thập dữ liệu và hiển thị kết quả/dữ liệu thông qua các thành phần trong giao diện người sử dụng.
- Business Logic Layer: lớp này thực hiện các nghiệp vụ chính của hệ thống, sử
dụng các dịch vụ do lớp Data Access cung cấp và cung cấp các dịch vụ cho lớp Presentation
- Data Access Layer: lớp này thực hiện các nghiệp vụ liên quan đến lưu trữ và
truy xuất dữ liệu của ứng dụng Thường lớp này sẽ sử dụng các dịch vụ của các hệ quản trị cơ sở dữ liệu như SQL Server, Oracle,… để thực hiện nhiệm vụ của mình Trong lớp này có các thành phần chính là Data Access Logic, Data Sources, Service Agents)
2.3.5 Lợi ích khi lập trình với mô hình ba lớp
- Hỗ trợ người lập trình viết code rõ ràng, rành mạch dễ tìm hiểu và sửa chữa
- Trong quá trình viết code chỉ một lần tạo kết nối trong toàn ứng dụng
- Phù hợp làm việc theo nhóm, mỗi người được phân công một mảng thực hiện công việc, tạo sự chuyên nghiệp
- Có tính thừa kế
- Có tính bảo mật cao
- Giảm số lượng dòng code và hạn chế thời gian lập trình
Trang 14Chương 3: PHÂN TÍCH - THIẾT KẾ HỆ THỐNG3.1 Yêu cầu chức năng
3.1.1 Yêu cầu lưu trữ
Các yêu cầu lưu trữ như: lưu trữ thông tin sinh viên, học sinh; lưu trữ thông tin nhà tài trợ, thông tin hỗ trợ học bổng từ nhà tài trợ; lưu trữ thông tin thông báo; lưu trữ thông tin quyết định; lưu trữ thông tin cấp học bổng; lưu trữ danh sách sinh viên nhận học bổng
3.1.2.Yêu cầu tra cứu
Các yêu cầu tra cứu như:
- Tra cứu thông tin nhà tài trợ (theo tên nhà tài trợ, theo tên kết hợp năm học, theo tên kết hợp năm học và đợt)
- Tra cứu thông tin sinh viên, học sinh được cấp học bổng (theo khoa, ngành, tên nhà tài trợ, học bổng, năm học, tên khoa kết hợp tên học bổng, ngành kết hợp với năm học, năn học kết hợp với đợt, tên nhà tài trợ kết hợp tên khoa năm học)
3.1.3 Yêu cầu thống kê
Các yêu cầu thống kê như:
- Thống kê số lượng nhà tài trợ, số tiền tài trợ từ nhà tài trợ (theo từng năm học, năm kết hợp đợt hỗ trợ)
- Thống kê số lượng sinh viên, học sinh được cấp học bổng (theo năm học, năm học kết hợp với đợt, năm học kết hợp với tên nhà tài trợ, năm học kết hợp với tên khoa, năm học kết hợp với tên ngành, năm học kết hợp với tên diện, năm học kết hợp với giới tính, năm học kết hợp với học lực, năm học kết hợp với điểm rèn luyện)
3.1.4 Yêu cầu kết xuất
Các yêu cầu kết xuất như:
- In danh sách sinh viên được cấp học bổng
- In thông báo đề cử sinh viên nhận học bổng
14
Trang 15- In danh sách sinh viên được cấp học bổng (theo năm học, năm học kết hợp với đợt, năm học kết hợp với tên nhà tài trợ, năm học kết hợp với tên khoa, năm học kết hợp với tên ngành, năm học kết hợp với tên diện, năm học kết hợp với giới tính, năm học kết hợp với học lực, năm học kết hợp với điểm rèn luyện).
3.1.5 Bảng yêu cầu chức năng nghiệp vụ cùng với các thông tin liên quan
3.1.5.1 Bộ phận: Nhân viên phụ trách lĩnh vực Mã số: NVPTLV
STT Công việc Loại
công việc
Quy định /Công thức liên
quan
Biểu mẫu liên quan
Ghi chú
Mỗi sinh viên, học sinh có
mã số theo quy định của trường (mã số là số và có 9 chữ số) và sinh viên phải học ở một lớp, có một ngành học, thuộc một khoa nào đó quản lý, có điểm rèn luyện và học lực từ loại khá trở lên, là con của gia đình
có hoàn cảnh gia đình theo qui định
Mỗi nhà tài trợ sẽ được gán một mã phân biệt, khoản tiền tài trợ được hỗ trợ có thể tính theo đơn vị Việt Nam đồng hay USD, hay đơn vị tiền tệ khác Thông tin hỗ trợ học bổng sẽ được
NVPTLV_BM2
Trang 16lưu trữ theo năm học, đợt.
thông tin
thông báo
Lưu trữ
Mỗi thông báo sẽ được gán một mã số phân biệt, thông tin thông báo được lưu trữ bao gồm, tên thông báo, có ngày thông báo, ngày chỉ định và đến ngày, tiêu chí
Thông tin cấp học bổng bao gồm thông tin học bổng đã được lập có mã số dựa trên thông tin nhà tài trợ đã hỗ trợ học bổng, năm cấp, đợt cấp thông tin học bổng còn kèm theo tên học bổng, tên nhân viên đã lập học bổng
và giá trị của tiền nhà tài trợ
đã hỗ trợ so với giá trị đồng Việt Nam tại thời điểm hiện tại cùng với thông tin sinh viên được cấp học bổng, số tiền cấp, đơn vị tiền tương ứng của học bổng vừa được lập
Mỗi quyết định có một mã
để phân biệt, có tên quyết định, ngày lập cùng với tên học bổng được thông qua bởi quyết định
NVPTLV_BM4
16
Trang 17thông tin
nhà tài trợ
ngành, tên nhà tài trợ, học bổng, năm học, tên khoa kết hợp tên học bổng, ngành kết hợp với năm học, năm học kết hợp với đợt, tên nhà tài trợ kết hợp tên khoa năm học
Việc tìm thông tin sinh viên, học sinh được cấp học bổng bổng dựa (theo khoa, ngành, tên nhà tài trợ, học bổng, năm học, tên khoa kết hợp tên học bổng, ngành kết hợp với năm học, năm học kết hợp với đợt, tên nhà tài trợ kết hợp tên khoa, năm học)
Báo cáo theo từng năm học, năm kết hợp đợt hỗ trợ
NVPTLV_BM6NVPTLV_BM7
thống kê số
lượng sinh
Kết xuất
Việc thống kê dựa vào các thông tin: diện, tên nhà tài trợ, ngành học, giới tính,
NVPTLV_BM8NVPTLV_BM9
Trang 18NVPTLV_BM10NVPTLV_BM11NVPTLV_BM12NVPTLV_BM13NVPTLV_BM14NVPTLV_BM15NVPTLV_BM16
Trang 19Thông tin sinh viên, học sinhSTT MSSV Họ và
tên
Ngày sinh
Giới tính
Dân tộc
học
Địa chỉ
Điện thoại
lực
Điểm rèn luyện
Trang 20Nội dung thông báoĐơn vị tiền:
Số tiền trên suất:
Tên Thông báo:
Đến ngày qui định:
Nội dung quyết định
Số lượng sinh viên được cấp học bổng
Tên học bổng:
Tên quyết định:
Trang 22NVPTLV_BM6:
Báo cáo thống kê số lượng nhà tài trợ, số tiền tài trợ từ nhà tài trợ theo năm
NVPTLV_BM7: Báo cáo thống kê số lượng nhà tài trợ, số tiền tài trợ từ nhà tài trợ theo năm và đợt
Trang 23STT MSSV Họ
và tên
Ngày sinh
Giới tính
Dân tộc
lực
Điểm rèn luyện
Số tiền(VND)
Điện thoại
và tên
Ngày sinh
Giới tính
Dân tộc
lực
Điểm rèn luyện
Số tiền(VND)
Trang 24STT MSSV Họ
và tên
Ngày sinh
Giới tính
Dân tộc
lực
Điểm rèn luyện
Số tiền(VND)
Trang 25STT MSSV Họ
và tên
Ngày sinh
Giới tính
Dân tộc
lực
Điểm rèn luyện
Số tiền(VND)
Điện thoại
và tên
Trang 26STT MSSV Họ
và tên
Trang 27STT MSSV Họ
và tên
Ngày sinh
Giới tính
Dân tộc
lực
Điểm rèn luyện
Số tiền(VND)
Trang 283.2 Yêu cầu phi chức năng
3.2.1 Bảng yêu cầu chức năng hệ thống
- Mặc định lấy ngày giờ hiện tại
3.2.2 Bảng yêu cầu chất lượng hệ thống
diện thân thiện với
người sử dụng
Tiện dụng - Các ô nhập liệu sáng lên khi
con trỏ chuột di chuyển vào
Cho phép sử dụng phím Enter để
di chuyển đến ô nhập liệu kế tiếp
cấp học bổng sang
dạng tập tin .XLS
cần thiết
Tương thích
28
Trang 293.3.1 Mô hình thực thể kết hợp (MCD)
3.3.1.1 Mô hình
Hình 3: Mô hình thực thể kết hợp
29
Trang 31Bảng mô tả thực thể nha_tai_tro: nhà tài trợ
Quản lý việc cấp phát học
bổng cho học sinh – sinh
viên Trường Đại học Trà
BẢNG MÔ TẢ THỰC
Nha_tai_troDiễn giải về thực thể: Nhà tài trợ
Khóa của thực thể: ma_nha_tai_tro
Bảng mô tả thực thể Thong_bao: Thông báo
Quản lý việc cấp phát học
bổng cho học sinh – sinh
viên Trường Đại học Trà
BẢNG MÔ TẢ THỰC THỂ
Ngày lập hồ sơ………
Người lập………
Thong_baoDiễn giải về thực thể: Thông báo
Khóa của thực thể: ma_thong_bao
ST
Trang 32sách sinh viên từ các khoa.
Bảng mô tả thực thể Quyet_dinh: Quyết định
Quản lý việc cấp phát học
bổng cho học sinh – sinh
viên Trường Đại học Trà
BẢNG MÔ TẢ THỰC
Quyet_dinhDiễn giải về thực thể: Quyết định
Khóa của thực thể: ma_quyet_dinh
Khóa của thực thể: ma_hoc_bong
Chiều dài
32
Trang 336 tong_so_suat Tổng số suất của học bổng int
Bảng mô tả thực thể Nhan_vien: Nhân viên
Quản lý việc cấp phát học
bổng cho học sinh – sinh
viên Trường Đại học Trà
BẢNG MÔ TẢ THỰC
Nhan_vienDiễn giải về thực thể: Nhân viên
Khóa của thực thể: ma_nhan_vien
Trang 34Bảng mô tả thực thể Sinh_vien: Sinh viên
Quản lý việc cấp phát học
bổng cho học sinh – sinh
viên Trường Đại học Trà
BẢNG MÔ TẢ THỰC THỂ
Ngày lập hồ sơ……… Người lập……… Sinh_vien
Diễn giải về thực thể: Sinh viên
Khóa của thực thể: ma_sinh_vien
ST
Bảng mô tả thực thể Lop: Lớp
Quản lý việc cấp phát học
bổng cho học sinh – sinh
viên trường Đại học Trà
BẢNG MÔ TẢ THỰC
LopDiễn giải về thực thể: Lớp
Khóa của thực thể: ma_lop
Trang 35Quản lý việc cấp phát học
bổng cho học sinh – sinh viên
Trường Đại học Trà Vinh
BẢNG MÔ TẢ THỰC THỂ
Ngày lập hồ sơ……… Người lập……… Nganh
Diễn giải về thực thể: Ngành
Khóa của thực thể: ma_nganh
Bảng mô tả thực thể Khoa: Khoa
Quản lý việc cấp phát học
bổng cho học sinh – sinh
viên Trường Đại học Trà
BẢNG MÔ TẢ THỰC
KhoaDiễn giải về thực thể: Khoa
Khóa của thực thể: ma_khoa
Bảng mô tả thực thể Bac_hoc: Bậc học
Quản lý việc cấp phát học
bổng cho học sinh – sinh viên
Trường Đại học Trà Vinh
BẢNG MÔ TẢ THỰC THỂ
Ngày lập hồ sơ……… Người lập……… Bac_hoc
Diễn giải về thực thể: Bậc học
Khóa của thực thể: ma_bac_hoc
Trang 361 ma_bac_hoc Mã bậc học nchar 5
Bảng mô tả thực thể Dan_toc: Dân tộc
Quản lý việc cấp phát học
bổng cho học sinh – sinh viên
Trường Đại học Trà Vinh
BẢNG MÔ TẢ THỰC THỂ
Ngày lập hồ sơ……… Người lập……… Dan_toc
Diễn giải về thực thể: Bậc học
Khóa của thực thể: ma_dan_toc
Bảng mô tả thực thể Dien: Diện
Quản lý việc cấp phát học
bổng cho học sinh – sinh viên
Trường Đại học Trà Vinh
BẢNG MÔ TẢ THỰC
DienDiễn giải về thực thể: Diện
Khóa của thực thể: ma_dien
Bảng mô tả thực thể Nam_hoc: Năm học
Quản lý việc cấp phát học
bổng cho học sinh – sinh viên
Trường Đại học Trà Vinh
BẢNG MÔ TẢ THỰC THỂ
Ngày lập hồ sơ……… Người lập……… 36
Trang 37Diễn giải về thực thể: Năm học
Khóa của thực thể: ma_nam_hoc
Bảng mô tả thực thể Dot: Đợt
Quản lý việc cấp phát học
bổng cho học sinh – sinh viên
trường Đại học Trà Vinh
BẢNG MÔ TẢ THỰC THỂ
Ngày lập hồ sơ……… Người lập……… Dot
Diễn giải về thực thể: Đợt
Khóa của thực thể: ma_dot
Trang 38Bảng mô tả thực thể Don_vi_tien: Đơn vị tiền
Quản lý việc cấp phát học
bổng cho học sinh – sinh viên
trường Đại học Trà Vinh
BẢNG MÔ TẢ THỰC THỂ
Ngày lập hồ sơ……… Người lập……… Don_vi_tien
Diễn giải về thực thể: Đơn vị tiền
Khóa của thực thể: ma_don_vi_tien
Bảng mô tả thực thể Tai_khoan: Tài khoản
Quản lý việc cấp phát học
bổng cho học sinh – sinh viên
Trường Đại học Trà Vinh
BẢNG MÔ TẢ THỰC
Tai_khoanDiễn giải về thực thể: Tài khoản
Khóa của thực thể: Ten_nguoi_dung
dung
38
Trang 39Quản lý việc cấp phát học
bổng cho học sinh – sinh viên
Trường Đại học Trà Vinh
BẢNG MÔ TẢ MỐI KẾT HỢP
Ngày lập hồ sơ……… Người lập……… Ho_tro_hoc_bong
Diễn giải : Hỗ trợ học bổng
Tên cùng bản số của các thực thể liên quan: Nha_tai_tro (1,n), Nam_hoc (1,n), Dot (1,n) Khóa của thực thể: ma_nha_tai_tro, ma_nam_hoc, ma_dot
Bảng mô tả mối kết hợp Cap_hoc_bong: Cấp học bổng
Quản lý việc cấp phát học
bổng cho học sinh – sinh viên
trường Đại học Trà Vinh
BẢNG MÔ TẢ MỐI KẾT
Cap_hoc_bongDiễn giải : Cấp học bổng
Tên cùng bản số của các thực thể liên quan: Hoc_bong (1,n), Sinh_vien(0,n).Khóa của thực thể: ma_hoc_bong, ma_sinh_vien
Việt Nam đồng
money
Trang 40Bảng mô tả mối kết hợp Tieu_chi_Hoc_bong: Tiêu chí học bổng
Quản lý việc cấp phát học
bổng cho học sinh – sinh viên
trường Đại học Trà Vinh
BẢNG MÔ TẢ MỐI KẾT HỢP
Ngày lập hồ sơ……… Người lập……… Tieu_chi_Hoc_bong
Diễn giải : Tiêu chí học bổng
Tên cùng bản số của các thực thể liên quan: Hoc_bong (1,n), Dien (1,n),
Khoa (1,n), Bac_hoc (1,n)
Khóa của thực thể: ma_hoc_bong, ma_khoa, ma_bac_hoc, ma_dien
40