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.
GVHD: ThS Nguyễn Trần Diễm Hạnh
1
SVTH: Sơn Phú Quý
Chương 2: CƠ SỞ LÝ THUYẾT
2.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ố.
GVHD: ThS Nguyễn Trần Diễm Hạnh
2
SVTH: Sơn Phú Quý
2.1.3. Hệ cơ sở dữ liệu (Database System) [2. Trang 10, 11]
- 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ười dùng cuối
Chương trình ứng dụng
Hệ quản trị cơ sở dữ liệu
CSDL (DB)
CSDL (DB)
CSDL (DB)
Hệ 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.
GVHD: ThS Nguyễn Trần Diễm Hạnh
3
SVTH: Sơn Phú Quý
- 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.
GVHD: ThS Nguyễn Trần Diễm Hạnh
4
SVTH: Sơn Phú Quý
2.2. Tổng quan về công nghệ phần mềm
2.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ữ
GVHD: ThS Nguyễn Trần Diễm Hạnh
5
SVTH: Sơn Phú Quý
liệ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
được trình bày cho người dùng xem qua các hàm trong thành phần giao diện (hàm xuất)
và lưu trữ lại qua các hàm trong thành phần dữ liệu (hàm ghi).
GVHD:
ThSQuy
Nguyễn
2.2.3.
trìnhTrần
côngDiễm
nghệHạnh
phần mềm [4. Trang 16, 17, 18] SVTH: Sơn Phú Quý
- Để 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
cụ thể.
2.2.3.1. Quy trình công nghệ phần mềm
Xác định
- Đây là bước hình thành bài toán hoặc đề tài. Ở bước này thiết kế trưởng
hoặc phân tích viên hệ thống phải biết được vai trò của phần mềm cần phát triển trong hệ
thống, đồng thời phải ước lượng công việc, lập biểu và phân công công việc.
- 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.
7
+ 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
nội dung
các
thaoHạnh
tác cần thực hiện.
GVHD:
ThSvà
Nguyễn
Trần
Diễm
SVTH: Sơn Phú Quý
- 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
GVHD: ThS Nguyễn Trần Diễm Hạnh
SVTH: Sơn Phú Quý
9
2.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
GVHD:
Nguyễn
TrầnC#
Diễm Hạnh
2.3. LậpThS
trình
ứng dụng
SVTH: Sơn Phú Quý
2.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]
11
2.3.3. Công cụ DotNetBar trong ngôn ngữ C#
GVHD: ThS Nguyễn Trần Diễm Hạnh
SVTH: Sơn Phú Quý
- 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
- Presentation Layer: lớp này làm nhiệm vụ giao tiếp với người dùng cuối để thu
thậ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ử
GVHD: ThS Nguyễn Trần Diễm Hạnh
SVTH: Sơn Phú Quý
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.
13
GVHD: ThS Nguyễn Trần Diễm Hạnh
SVTH: Sơn Phú Quý
Chương 3: PHÂN TÍCH - THIẾT KẾ HỆ THỐNG
3.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
- In quyết định cấp học bổng.
In danh
sáchTrần
sinhDiễm
viên được
năm học
kếtPhú
hợpQuý
với
GVHD: -ThS
Nguyễn
Hạnh cấp học bổng (theo năm học,SVTH:
Sơn
đợ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
Quy định /Công thức liên
Biểu mẫu liên
Ghi
công
quan
quan
chú
việc
1
Lữ trữ
Lưu
Mỗi sinh viên, học sinh có NVPTLV_BM1
thông tin,
trữ
mã số theo quy định của
học sinh,
trường (mã số là số và có 9
sinh viên.
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.
2
Lưu trữ
Lưu
Mỗi nhà tài trợ sẽ được gán NVPTLV_BM2
thông tin
trữ
một mã phân biệt, khoản
nhà tài trợ
tiền tài trợ được hỗ trợ có
hỗ trợ học
thể tính theo đơn vị Việt
bổng.
Nam đồng hay USD, hay
đơn vị tiền tệ khác. Thông
tin hỗ trợ học bổng sẽ được
15
GVHD: ThS Nguyễn Trần Diễm Hạnh
SVTH: Sơn Phú Quý
lưu trữ theo năm học, đợt.
3
Lưu trữ
Lưu
Mỗi thông báo sẽ được gán NVPTLV_BM3
thông tin
trữ
một mã số phân biệt, thông
thông báo.
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í
sẽ thông báo.
4
Lưu trữ
Lưu
Thông tin cấp học bổng bao NVPTLV_BM5
thông tin
trữ
gồm thông tin học bổng đã
cấp học
được lập có mã số dựa trên
bổng.
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.
5
Lưu trữ
Lưu
Mỗi quyết định có một mã NVPTLV_BM4
thông tin
trữ
để phân biệt, có tên quyết
quyết định
định, ngày lập cùng với tên
học bổng được thông qua
bởi quyết định.
16
GVHD: ThS Nguyễn Trần Diễm Hạnh
SVTH: Sơn Phú Quý
6
Tra cứu
Tra
Việc tìm thông tin nhà tài
thông tin
cứu
trợ dựa vào thông tin khoa,
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.
7
Tra cứu
Tra
Việc tìm thông tin sinh
thông tin
cứu
viên, học sinh
được cấp
sinh viên,
học bổng bổng dựa (theo
học sinh
khoa, ngành, tên nhà tài trợ,
được cấp
học bổng, năm học, tên
học bổng
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).
8
Báo cáo
Kết
Báo cáo theo từng năm học, NVPTLV_BM6
thống kê số
xuất
năm kết hợp đợt hỗ trợ.
Báo cáo
Kết
Việc thống kê dựa vào các NVPTLV_BM8
thống kê số
xuất
NVPTLV_BM7
lượng nhà
tài trợ, số
tiền tài trợ
từ nhà tài
trợ
9
thông tin: diện, tên nhà tài NVPTLV_BM9
lượng sinh
trợ, ngành học, giới tính,
GVHD: ThS Nguyễn Trần Diễm Hạnh
SVTH: Sơn Phú Quý
17
viên học
khoa, học lực, điểm rèn NVPTLV_BM10
sinh được
luyện).
NVPTLV_BM11
cấp học
NVPTLV_BM12
bổng trong
NVPTLV_BM13
năm
NVPTLV_BM14
NVPTLV_BM15
NVPTLV_BM16
10
In danh
Kết
sách sinh
xuất
NVPTLV_BM5
viên, học
sinh được
cấp học
bổng
11
In thông
báo
NVPTLV_BM3
12
In quyết
định
NVPTLV_BM4
GVHD: ThS Nguyễn Trần Diễm Hạnh
18
SVTH: Sơn Phú Quý
NVPTLV_BM1
Thông tin sinh viên, học sinh
STT MSSV Họ và
tên
Ngày
Giới
Dân
sinh
tính
tộc
Diện
Bậc
Địa
Điện
học
chỉ
thoại
lớp
Ngành
Khoa
Học
Điểm
lực
rèn
luyện
GVH
D:
ThS
Ngu
yễn
Trần
Diễm
Hạnh
NVPTLV_BM2
Thông tin nhà tài trợ hỗ trợ học bổng
STT
Mã nhà tài
Tên nhà tài trợ
Địa chỉ
Điện thoại
Email
trợ
Số tiền
hỗ trợ
SVT
H:
Sơn
Phú
Quý
19
Đơn vị tiền
Năm học
Đợt hỗ trợ
NVPTLV_BM3
Thông tin thông báo cấp học bổng
Mã Thông báo:
Ngày tháng:
Tên Thông báo:
Nội dung thông báo
Đơn vị tiền:
Số tiền trên suất:
STT
Tên
khoa
Bậc
học
Tên diện
Số suất
Số tiền /suất
ĐVT
Đến ngày qui định:
NVPTLV_BM4
Quyết định
Mã quyết định:
Ngày tháng:
Tên quyết định:
Nội dung quyết định
Tên học bổng:
Số lượng sinh viên được cấp học bổng
GVHD: ThS Nguyễn Trần Diễm Hạnh
20
SVTH: Sơn Phú Quý
NVPTLV_BM5
Thông tin học bổng
Mã học bổng:
Ngày tháng:
Tên học bổng:
GVH
D:
ThS
Ngu
yễn
Trần
Diễm
Hạnh
Tên nhà tài trợ:
Năm cấp:
STT
MSSV
Đợt cấp:
Họ
tên
Ngày
sinh
Giới
tính
Dân
tộc
Diện
lớp
Ngành
Khoa
Học
lực
Điểm
rèn
luyện
Số tiền
(VNĐ)
Tổng số tiền:
Lập bảng
HIỆU TRƯỞNG
21
Số điên
thoại
SVT
H:
Sơn
Phú
Quý
NVPTLV_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
Ngày tháng:
Năm:
STT
Mã nhà tài trợ
Tên nhà tài trợ
Địa chỉ
Điện thoại
Số tiền hỗ trợ
Đơn vị tiền
Năm Học
Đợt
GVH
D:
ThS
Ngu
yễn
Trần
Diễm
Hạnh
Lập bảng
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
Năm:
STT
Đợt:
Mã nhà tài trợ
Tên nhà tài trợ
Ngày tháng:
Địa chỉ
Điện thoại
Lập bảng
22
Số tiền hỗ trợ
Đơn vị tiền
Năm Học
Đợt
SVT
H:
Sơn
Phú
Quý
NVPTLV_BM8:
Thống kê thông sinh viên nhận học bổng theo năm học
Ngày tháng:
Năm:
STT
MSSV
Họ
và
tên
Ngày
sinh
Giới
tính
Dân
tộc
Diện
lớp
Ngành
GVH
D:
ThS
Ngu
yễn
Trần
Diễm
Hạnh
Lập bảng
Học
lực
Điểm
rèn
luyện
Số tiền
(VND)
Điện thoại
Tổng số tiền:
NVPTLV_BM9:
Thống kê thông sinh viên nhận học bổng theo năm và đợt
Năm:
STT
Ngày tháng:
Đợt
MSSV
Họ
và
tên
Ngày
sinh
Giới
tính
Dân
tộc
Diện
lớp
Lập bảng
Ngành
Học
lực
Điểm
rèn
luyện
Tổng số tiền:
23
Số tiền
(VND)
Điện thoại
SVT
H:
Sơn
Phú
Quý
NVPTLV_BM10:
Thống kê thông sinh viên nhận học bổng theo năm và tên nhà tài trợ
Năm:
STT
tên nhà tài trợ
MSSV
Họ
và
tên
Ngày
sinh
Giới
tính
Ngày tháng:
Dân
tộc
Diện
lớp
Ngành
GVH
D:
ThS
Ngu
yễn
Trần
Diễm
Hạnh
Lập bảng
Học
lực
Điểm
rèn
luyện
Số tiền
(VND)
Điện thoại
Số tiền
(VND)
Điện thoại
Tổng số tiền:
NVPTLV_BM11 :
Thống kê thông sinh viên nhận học bổng theo năm và tên khoa
Năm:
STT
tên khoa
MSSV
Họ
và
tên
Ngày
sinh
Ngày tháng:
Giới
tính
Dân
tộc
Diện
lớp
Lập bảng
Ngành
Học
lực
Tổng số tiền:
24
Điểm
rèn
luyện
SVT
H:
Sơn
Phú
Quý
NVPTLV_BM12:
Thống kê thông sinh viên nhận học bổng theo năm và tên ngành
Năm:
STT
tên ngành
MSSV
Họ
và
tên
Ngày
sinh
Ngày tháng:
Giới
tính
Dân
tộc
Diện
lớp
Ngành
GVH
D:
ThS
Ngu
yễn
Trần
Diễm
Hạnh
Lập bảng
Học
lực
Điểm
rèn
luyện
Số tiền
(VND)
Điện thoại
Tổng số tiền:
NVPTLV_BM13:
Thống kê thông sinh viên nhận học bổng theo năm tên diện
Năm:
STT
Ngày tháng:
tên diện
MSSV
Họ
và
tên
Ngày
sinh
Giới
tính
Dân
tộc
Diện
lớp
Lập bảng
Ngành
Học
lực
Điểm
rèn
luyện
Tổng số tiền:
25
Số tiền
(VND)
Điện thoại
SVT
H:
Sơn
Phú
Quý