1. Trang chủ
  2. » Thể loại khác

LUẬN VĂN TỐT NGHIỆP KỸ SƯ NGÀNH CÔNG NGHỆ THÔNG TIN ĐỀ TÀI :XÂY DỰNG CHƯƠNG TRÌNH QUẢN LÝ ĐIỂMHỆ VỪA HỌC VỪA LÀM QUA HỆ THỐNG MẠNG CỤC BỘ

75 42 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 75
Dung lượng 2,08 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

 Là một công cụ thực thi mã trung gian tựa JVM Thư viện lớp Framework Class Library – FCL Là một thành phần chính khác của .NET Framework là một tập hợp hướng đốitượng của các kiểu dữ

Trang 1

KHOA CÔNG NGHỆ THÔNG TIN

Tel (84-511) 736 949, Fax (84-511) 842 771Website: itf.ud.edu.vn, E-mail: cntt@edu.ud.vn

LUẬN VĂN TỐT NGHIỆP KỸ SƯ

NGÀNH CÔNG NGHỆ THÔNG TIN

MÃ NGÀNH : 05115

ĐỀ TÀI : XÂY DỰNG CHƯƠNG TRÌNH QUẢN LÝ ĐIỂM

HỆ VỪA HỌC VỪA LÀM QUA HỆ THỐNG MẠNG CỤC BỘ

Mã số : 06T2 - 037 Ngày bảo vệ : 15-16/06/2011

SINH VIÊN : LÊ ĐỨC THỌ LỚP : 06T2

CBHD :ThS PHAN CHÍ TÙNG

ĐÀ NẴNG - 2011

Trang 2

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

Đà Nẵng, Ngày…….tháng…….năm 2011

Giảng viên hướng dẫn

Th.S PHAN CHÍ TÙNG

Trang 3

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

……….……

Trang 4

Em xin chân thành cảm ơn khoa Công nghệ thông tin, trường Đại học Bách khoa, Đại học Đà Nẵng đã tạo điều kiện thuận lợi cho em học tập và hoàn thành tốt

đề tài này.

Em xin chân thành cảm ơn các thầy cô trong khoa Công nghệ thông tin đã tận tình giảng dạy, trang bị cho em những kiến thức quý báu trong quá trình học tập tại trường đã đóng góp rất nhiều để hoàn thành đề tài.

Em xin bày tỏ lòng biết ơn sâu sắc đến thầy Phan Chí Tùng đã tận tình hướng dẫn, chỉ bảo em trong suốt quá trình thực hiện đề tài.

Xin cảm ơn sự quan tâm, giúp đỡ, ủng hộ, động viên của bạn bè trong quá trình học tập cũng như trong quá trình hoàn thành tiến độ đề tài ở từng giai đoạn.

Em xin chân thành cảm ơn !

Trang 5

Tôi xin cam đoan :

1 Những nội dung trong luận văn này là do tôi thực hiện dưới sự hướng dẫn trực tiếp của thầy ThS Phan Chí Tùng.

2 Mọi tham khảo dùng trong luận văn đều được trích dẫn rõ ràng tên tác giả, tên công trình, thời gian, địa điểm công bố.

3 Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá, tôi xin chịu hoàn toàn trách nhiệm.

Sinh viên,

LÊ ĐỨC THỌ

Trang 6

CHƯƠNG 1 4

CƠ SỞ LÝ THUYẾT 4

I Giới thiệu về công nghệ sử dụng 4

I.1 Microsoft NET 4

I.1.1 Tổng quan 4

I.1.2 Kiến trúc Net Framework 5

I.1.3 Biên dịch và ngôn ngữ trung gian (MSIL) 8

I.2 Ngôn ngữ C# 9

I.2.1 C# là ngôn ngữ đơn giản 9

I.2.2 C# là ngôn ngữ hiện đại 9

I.2.3 C# là ngôn ngữ hướng đối tượng 10

I.2.4 C# là ngôn ngữ mạnh mẽ và mềm dẻo 10

I.2.5 C# là ngôn ngữ hướng module 10

I.2.6 C# sẽ trở nên phổ biến 10

I.3 Giới thiệu mô hình 3-layer 10

I.4 Giới thiệu về SQL Server 11

I.4.1 SQL là ngôn ngữ cơ sở dữ liệu quan hệ 12

I.4.2 Vai trò của SQL 13

II Lý thuyết về cách thức quản lý điểm 13

II.1 Đối tượng sử dụng 14

II.2 Quá trình quản lý điểm 14

II.3 Quy trình quản lý điểm 15

CHƯƠNG 2 17

PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 17

I Khảo sát hệ thống 17

I.1 Mô tả bài toán 17

I.2 Yêu cầu 18

I.3 Phân tích và đặc tả yêu cầu 19

II Thiết kế cơ sở dữ liệu 23

II.1 Đối tượng và mối quan hệ được quản lý 23

Trang 7

II.2 Bảng từ điển và thuộc tính của các đối tượng 24

II.2.1 Bảng từ điển dữ liệu 24

II.2.2 Thuộc tính của các đối tượng 26

II.3 Mô hình dữ liệu quan hệ giữa các bảng 28

II.3.1 Ràng buộc dữ liệu và khóa 30

II.3.2 Mô tả các bảng 30

CHƯƠNG 3 36

KẾT QUẢ CHƯƠNG TRÌNH 36

I Giao diện chính 36

II Danh mục của chương trình 36

III Các chức năng của chương trình 41

KẾT LUẬN 46

PHỤ LỤC 47

TÀI LIỆU THAM KHẢO 65

Trang 8

Hình 1: Kiến trúc khung ứng dụng Net……… ………… 5

Hình 2: CLR độc lập với Hệ điều hành……… ……… 6

Hình 3: Quá trình thực thi……….………… …… 8

Hình 4: Mô hình 3 layer……… ……… 11

Hình 5: Mô hình thực thể kết hợp ……… ……… 22

Hình 6: Mô hình quan hệ giữa các bảng……… ……… 29

Hình 7: Giao diện chính của chương trình……… …….….36

Hình 8: Các danh mục của chương trình……… …… …36

Hình 9: Danh mục Hệ Đào Tạo……… …… ….37

Hình 10: Danh mục Khối Lớp……… ……….37

Hình 11: Danh mục Học Kỳ……… …………38

Hình 12: Danh mục Giảng Viên……… ……… …38

Hình 13: Danh mục Sinh Viên……… ………….39

Hình 14: Danh mục Học Phần……….….……… 39

Hình 15: Danh mục Lớp……….…….……….… 40

Hình 16: Danh mục Kế Hoạch Giảng Dạy……….……….……….… 40

Hình 17: Giao diện các chức năng của chương trình……….…….……….… 41

Hình 18: Form nhập điểm ……….……… ……….… 41

Hình 19: Form Quản Lý Điểm……….… …………42

Hình 20: Form Xem điểm sinh viên trong học kỳ……….……….…….… 42

Hình 21: Mẫu Excel bảng điểm của sinh viên……….……….…….….43

Hình 22: Form xem điểm lớp……….…… 43

Hình 23: Mẫu Excel bảng điểm của lớp……….……… ……… 44

Hình 24: Form Danh sách học lại……… 44

Hình 25: Form báo cáo danh sách lớp……… 45

Hình 26: Form liên hệ……….45

DANH MỤC CÁC TỪ VIẾT TẮT

Trang 9

1 IDE Integrated Development Environment

2 XML Extensible Markup Language

4 CLS Common Language Specification

5 FCL Framework Class Library

6 CLR Common Language Runtime

7 BLL Business Logic Layer

9 SQL Structured Query Language

11 CVD Chuyên viên đào tạo

12 HSSV Học sinh sinh viên

15 FDD Function Decomposition Diagram

17 CNTT Công nghệ thông tin

MỞ ĐẦU

Trang 10

sâu vào rất nhiều lĩnh vực Giáo dục và đào tạo cũng đang từng bước đưa khoa học vàcông nghệ vào áp dụng trong đó, lĩnh vực quản lý là một trong số lĩnh vục được ápdụng Chúng ta có thể thấy rằng có rất nhiều chương trình được viết ra như: Quản lýthư viện, quản lý học sinh, sinh viên hay quản lý giáo viên…và trong đó không thểkhông nói tới lĩnh vực quản lý điểm Qua một thời gian tìm hiểu và làm việc, em đãxây dựng hoàn thành chương trình Quản lý điểm của một khoa trong trường Đại học

và Cao Đẳng Qua quá trình tìm hiểu đề tài chúng em nhận thấy việc “Quản lý điểm”

là không thể thiếu trong trường học Bởi vì đó là cơ sở để đánh giá kết quả học tập vàrèn luyện của sinh viên trong quá trình học tập tại trường Nếu không có cơ sở dữ liệu

để quản lý điểm thì sẽ không có cơ sở để đánh giá quá trình học tập của sinh viên, vànghiễm nhiên là sinh viên đã tốn một khoảng thời gian mà không thu lại được gì Do

đó, em mạnh dạn tìm hiểu và xây dựng chương trình” quản lý điểm sinh viên hệ vừa

học vừa làm qua hệ thống mạng cục bộ “cho sinh viên.

2 Mục đích của đề tài

- Mang tính chuyên nghiệp cho việc quản lý của trường

- Hồ sơ lưu trữ của nhà trường sẽ được tốt hơn

- Đáp ứng nhu cầu xử lý tính toán, tìm kiếm, thống kê, xuất báo cáo thông tin

và điểm số của sinh viên một cách nhanh chóng, chính xác và có hiệu quả

3 Nhiệm vụ thực hiện

- Các nguồn điều tra

Với hệ thống này có thể thấy nguồn điều tra bao gồm :

+ Người dùng hệ thống: là giáo vụ khoa, sinh viên, các thầy cô …

+ Các mẫu biểu, bảng điểm, danh sách sinh viên, các báo cáo tổng kết…

+ Các phần mềm quản lý điểm hiện có trên thị trường

- Phương pháp điều tra

+ Tham khảo ý kiến của các thầy cô, các anh chị khóa trước và trên Internet…

Trang 11

- Tìm hiểu đề tài

Quá trình quản lý điểm được diễn ra như sau:

+ Sau khi thi và có điểm của các môn thi Điểm của các môn thi được chuyểntới phòng giáo vụ khoa, nhiệm vụ của phòng là nhập điểm của từng môn học đó vào

cơ sở dữ liệu

+ Thang điểm tối đa của mỗi môn học là thang điểm 10 Sau mỗi kỳ học thìgiáo vụ khoa sẽ tiến hành sắp xếp phân loại sinh viên Đối với những sinh viên khágiỏi thì tiến hành khen thưởng

+ Phân loại sinh viên để từ đó đề ra phương hướng dạy và học tập của khoa sao chokết quả học tập và dạy học trong kỳ tới đạt nhiều thành tích cao hơn kỳ vừa qua

Trang 12

Đề tài bao gồm 3 phần: phần mở đầu, phần nội dung, phần kết luận

Phần nội dung gồm

Cơ sở lý thuyết: Cung cấp các kiến thức cơ bản về các công nghệ, ngôn ngữ

lập trình và mô hình được sử dụng để xây dựng chương trình Nghiên cứu cách quản

lý điểm hệ vừa học vừa làm…

 Visual Studio 2008

 Microsoft SQL Server 2005

 Microsoft Net

Phân tích và thiết kế hệ thống: Nhằm đi sâu chi tiết vào các chức năng của hệ

thống Xây dựng biểu đồ phân cấp chức năng, biểu đồ luồng dữ liệu Từ đó xác địnhcác thực thể, kiểu thực thể, các thuộc tính và xây dựng mô hình thực thể liên kết cho

hệ thống

 Khảo sát yêu cầu

+ Mô tả bài toán+ Yêu Cầu+ Phân tích và đặc tả yêu cầu

 Thiết kế cơ sở dữ liệu

Kết quả chương trình: Chạy DEMO chương trình Phân tích dữ liệu cho ta

cách thức tổ chức và truy cập dữ liệu hiệu quả nhất

Trang 13

CHƯƠNG 1

CƠ SỞ LÝ THUYẾT

I.1 Microsoft NET

Tổng quan

Microsoft NET gồm 2 phần chính: Framework và Integrated DevelopmentEnvironment (IDE) Framework cung cấp những gì cần thiết và căn bản, chữFramework có nghĩa là khung hay khung cảnh trong đó ta dùng những hạ tầng cơ sởtheo một qui ước nhất định để công việc được trôi chảy IDE thì cung cấp một môitrường giúp chúng ta triển khai dễ dàng, và nhanh chóng các ứng dụng dựa trên nềntảng NET

Nếu không có IDE chúng ta cũng có thể dùng một trình soạn thảo ví nhưNotepad hay bất cứ trình soạn thảo văn bản nào và sử dụng command line để biêndịch và thực thi, tuy nhiên việc này mất nhiều thời gian Tốt nhất là chúng ta dùngIDE phát triển các ứng dụng, và cũng là cách dễ sử dụng nhất

Thành phần Framework là quan trọng nhất NET là cốt lõi và tinh hoa của môitrường, còn IDE chỉ là công cụ để phát triển dựa trên nền tảng đó Trong NET toàn

bộ các ngôn ngữ C#, Visual C++ hay Visual Basic.NET đều dùng cùng một IDE

Tóm lại, Microsoft NET là nền tảng cho việc xây dựng và thực thi các ứngdụng phân tán, độc lập với hệ điều hành Một số tính năng của Microsoft NET chophép những nhà phát triển sử dụng như sau:

 Tích hợp một số công nghệ đã có của Microsoft và một số công nghệ mớinhằm tạo ra giao diện lập trình mới

 Sử dụng mã trung gian, độc lập với hệ điều hành

 Đa ngôn ngữ và tốc độ phát triển ứng dụng nhanh

 Một mô hình lập trình cho phép nhà phát triển xây dựng các ứng dụngdịch vụ web và ứng dụng client với Extensible Markup Language (XML)

 Cung cấp các server phục vụ bao gồm: Windows 2000, SQLServer, và BizTalk Server, tất cả điều tích hợp, hoạt động, và quản lý cácdịch vụ XML Web và các ứng dụng

 Nhiều công cụ hỗ trợ như Visual Studio NET, để phát triển các dịch vụWeb XML, ứng dụng trên nền Windows hay nền web một cách dể dàng và

Trang 14

hiệu quả.

I.1.1 Kiến trúc Net Framework

.Net hỗ trợ tích hợp ngôn ngữ, tức là ta có thể kế thừa các lớp, bắt các biệt lệ,

đa hình thông qua nhiều ngôn ngữ .Net Framework thực hiện được việc này là nhờvào đặc tả Common Type System – CTS (hệ thống kiểu chung) mà tất cả các thànhphần Net đều tuân theo Ví dụ, mọi thứ trong Net đều là đối tượng, thừa kế từ lớpgốc System.Object

Ngoài ra Net còn bao gồm Common Language Specification – CLS (đặc tảngôn ngữ chung) Nó cung cấp các qui tắc cơ bản mà một ngôn ngữ muốn tích hợpphải thoả mãn CLS chỉ ra các yêu cầu tối thiểu của ngôn ngữ hỗ trợ Net Trình biêndịch tuân theo CLS sẽ tạo các đối tượng có thể tương hợp với các đối tượng khác Bộthư viện lớp của khung ứng dụng (Framework Class Library – FCL) có thể được dungbởi bất kỳ ngôn ngữ nào tuân theo CLS

.Net Framework nằm ở tầng trên của hệ điều hành (bất kỳ hệ điều hành nàokhông chỉ là Windows) .Net Framework bao gồm:

 Bốn ngôn ngữ chính thức: C#, VB.Net, C++, và Jscript.Net

 Common Language Runtime – CLR, nền tảng hướng đối tượng cho pháttriển ứng dụng Windows và Web mà các ngôn ngữ có thể chia sẻ sử dụng

 Bộ thư viện Framework Class Library – FCL

Hình 1 : Kiến trúc khung ứng dụng Net

Trang 15

.NET Framework có hai thành phần chính: Common Language Runtime(CLR) và thư viện lớp NET Framework Phần tiếp theo sẽ mô tả rõ hơn về 2 thànhphần này.

Common Language Runtime (CLR)

CLR là nền tảng của NET Framework Nó cung cấp môi trường cho ứngdụng thực thi, CLR là một máy ảo, tương tự máy ảo Java Chúng ta có thể hiểuruntime như là một agent quản lý mã nguồn khi nó được thực thi, cung cấp các dịch

vụ cốt lõi như: quản lý bộ nhớ, quản lý tiểu trình, và quản lý từ xa

Khái niệm quản lý mã nguồn là nguyên lý nền tảng của runtime Mã nguồn

mà đích tới runtime thì được biết như là mã nguồn được quản lý và khôngbao giờ được dịch (managed code) Trong khi đó mã nguồn mà không có đích tớiruntime thì được biết như mã nguồn không được quản lý (unmanaged code) Khảnăng hoạt động giữa mã nguồn được quản lý và mã nguồn không được quản lý chophép người phát triển tiếp tục những thành phần cần thiết của COM và DLL

.NET Compile r

Intermediate Language

Intermediate Language

CLR for Linux CLR for Window

s

CLR for Unix

Linux Native code Native code Windows Native code Unix

Trang 16

 Là một công cụ thực thi mã trung gian (tựa JVM)

Thư viện lớp (Framework Class Library – FCL)

Là một thành phần chính khác của NET Framework là một tập hợp hướng đốitượng của các kiểu dữ liệu được dùng lại, nó cho phép chúng ta có thể phát triểnnhững ứng dụng từ những ứng dụng truyền thống command-line hay những ứng dụng

có giao diện đồ họa (GUI) đến những ứng dụng mới nhất được cung cấp bởiASP.NET, như là Web Form và dịch vụ XML Web

Thư viện lớp NET Framework là một tập hợp những kiểu dữ liệu được dùnglại và được kết hợp chặt chẽ với Common Language Runtime Thư viện lớp là hướngđối tượng cung cấp những kiểu dữ liệu mà mã nguồn được quản lý của chúng ta cóthể dẫn xuất Điều này không chỉ làm cho những kiểu dữ liệu của NET Framework dễ

sử dụng mà còn làm giảm thời gian liên quan đến việc học đặc tính mới của NETFramework Thêm vào đó, các thành phần của các hãng thứ ba có thể tích hợp vớinhững lớp trong NET Framework

Cũng như mong đợi của người phát triển với thư viện lớp hướng đối tượng,kiểu dữ liệu NET Framework cho phép người phát triển thiết lập nhiều mức độ thôngdụng của việc lập trình, bao gồm các nhiệm vụ như: quản lý chuỗi, thu thập hay chọnlọc dữ liệu, kết nối với cơ cở dữ liệu, và truy cập tập tin Ngoài những nhiệm vụ thôngdụng trên Thư viện lớp còn đưa vào những kiểu dữ liệu để hỗ trợ cho những kịch bảnphát triển chuyên biệt khác Ví dụ người phát triển có thể sử dụng NET Framework

để phát triển những kiểu ứng dụng và dịch vụ như sau:

Trang 17

I.1.2 Biên dịch và ngôn ngữ trung gian (MSIL)

Với Net, chương trình không biên dịch thành tập tin thực thi, mà biên dịchthành ngôn ngữ trung gian MSIL (Microsoft Intermediate Language, viết tắc là IL),sau đó chúng được CLR thực thi Các tập tin IL biên dịch từ C# đồng nhất với các tậptin IL biên dịch từ ngôn ngữ Net khác

Khi biên dịch dự án, mã nguồn C# được chuyển thành tập tin IL lưu trên đĩa.Khi chạy chương trình thì IL được biên dịch (hay thông dịch) một lần nữa bằng trìnhJust In Time – JIT, khi này kết quả là mã máy và bộ xử lý sẽ thực thi

Hình 3: Quá trình thực thiTrình biên dịch JIT chỉ chạy khi có yêu cầu Khi một phương thức được gọi,JIT phân tích IL và sinh ra mã máy tối ưu cho từng loại máy JIT có thể nhận biết mãnguồn được biên dịch chưa, để có thể chạy ngay ứng dụng hay phải biên dịch lại CLS

có nghĩa là các ngôn ngữ Net cùng sinh ra mã IL Các đối tượng được tạo theo một

.NET Compile r

.NET Compile r

Intermediate Language

Intermediate Language

Native code

Just In Time

Compiler

Trang 18

ngôn ngữ nào đó sẽ được truy cập và kế thừa bởi các đối tượng thuộc ngôn ngữ khác.

Vì vậy ta có thể tạo được một lớp cơ sở trong VB.Net và thừa kế nó từ C#

I.2 Ngôn ngữ C#

Ngôn ngữ C# có ý nghĩa cao khi nó thực thi những khái niệm lập trình hiệnđại C# bao gồm tất cả những hỗ trợ cho cấu trúc, thành phần component, lập trìnhhướng đối tượng Được xây dựng trên nền tảng của hai ngôn ngữ mạnh nhất là C++

và Java

Ngôn ngữ C# là một ngôn ngữ được dẫn xuất từ C và C++, nhưng nó được tạo

từ nền tảng phát triển hơn Microsoft bắt đầu với công việc trong C và C++ và thêmvào những đặc tính mới để làm cho ngôn ngữ này dễ sử dụng hơn Nhiều trong sốnhững đặc tính này khá giống với những đặc tính có trong ngôn ngữ Java Khôngdừng lại ở đó, Microsoft đưa ra một số mục đích khi xây dựng ngôn ngữ này Nhữngmục đích này được được tóm tắt như sau:

 C# là ngôn ngữ đơn giản

 C# là ngôn ngữ hiện đại

 C# là ngôn ngữ hướng đối tượng

 C# là ngôn ngữ mạnh mẽ và mềm dẻo

 C# là ngôn ngữ có ít từ khoá

 C# là ngôn ngữ hướng module

 C# sẽ trở nên phổ biến

I.2.1 C# là ngôn ngữ đơn giản

- C# loại bỏ được một vài sự phức tạp và rối rắm của các ngôn ngữ C++ vàJava

- C# khá giống C / C++ về diện mạo, cú pháp, biểu thức, toán tử

- Các chức năng của C# được lấy trực tiếp từ ngôn ngữ C / C++ nhưng đượccải tiến để làm cho ngôn ngữ đơn giản hơn

I.2.2 C# là ngôn ngữ hiện đại

C# có được những đặc tính của ngôn ngữ hiện đại như:

- Xử lý ngoại lệ

- Thu gom bộ nhớ tự động

- Có những kiểu dữ liệu mở rộng

Trang 19

- Bảo mật mã nguồn

I.2.3 C# là ngôn ngữ hướng đối tượng

C# hỗ trợ tất cả những đặc tính của ngôn ngữ hướng đối tượng là:

- Sự đóng gói (encapsulation)

- Sự kế thừa (inheritance)

- Đa hình (polymorphism)

I.2.4 C# là ngôn ngữ mạnh mẽ và mềm dẻo

- Với ngôn ngữ C#, chúng ta chỉ bị giới hạn ở chính bản thân của chúng ta.Ngôn ngữ này không đặt ra những ràng buộc lên những việc có thể làm

- C# được sử dụng cho nhiều dự án khác nhau như: tạo ra ứng dụng xử lý vănbản, ứng dụng đồ họa, xử lý bảng tính; thậm chí tạo ra những trình biên dịch cho cácngôn ngữ khác

- C# là ngôn ngữ sử dụng giới hạn những từ khóa Phần lớn các từ khóa dùng

để mô tả thông tin, nhưng không gì thế mà C# kém phần mạnh mẽ Chúng ta có thểtìm thấy rằng ngôn ngữ này có thể được sử dụng để làm bất cứ nhiệm vụ nào

I.2.5 C# là ngôn ngữ hướng module

- Mã nguồn của C# được viết trong Class (lớp) Những Class này chứa cácMethod (phương thức) thành viên của nó

- Class (lớp) và các Method (phương thức) thành viên của nó có thể được sửdụng lại trong những ứng dụng hay chương trình khác

I.2.6 C# sẽ trở nên phổ biến

C# mang đến sức mạnh của C++ cùng với sự dễ dàng của ngôn ngữ Visual Basic

I.3 Giới thiệu mô hình 3-layer

Trong phát triển ứng dụng, để dễ quản lý các thành phần của hệ thống, cũngnhư không bị ảnh hưởng bởi các thay đổi, người ta hay nhóm các thành phần có cùngchức năng lại với nhau và phân chia trách nhiệm cho từng nhóm để công việc không

bị chồng chéo và ảnh hưởng lẫn nhau Bạn sẽ nghe nói đến thuật ngữ kiến trúc đatầ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ì? Là Presentation, Business Logic, và Data Access Cáclớ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ầnbiết lớp kia cung cấp dịch vụ gì cho mình và sử dụng nó mà thôi

Trang 20

Ví dụ: Trong một công ty bạn có từng phòng ban, mỗi phòng ban sẽ chịu trách

nhiệm một công việc cụ thể nào đó, phòng này không được can thiệp vào công việcnội bộ của phòng kia như Phòng tài chính thì chỉ phát lương, còn chuyện lấy tiền đâuphát cho các anh phòng Marketing thì các anh không cần biết

Hình 4: Mô hình 3 layer

Vai trò của các layer

- GUI (Presentation) Layer: Nhập liệu và trình bày dữ liệu, có thể bao gồmcác bước kiểm tra dữ liệu trước khi gọi Business Logic Layer

- Business Logic Layer: Kiểm tra các yêu cầu nghiệp vụ trước khi cập nhật

dữ liệu, quản lý các Transaction, quản lý các concurrent access

- Data Access Layer: Kết nối CSDL, tìm kiếm, thêm, xóa, sửa,…trên CSDL

I.4 Giới thiệu về SQL Server

Ngôn ngữ hỏi có cấu trúc (SQL) và các hệ quản trị cơ sở dữ liệu quan hệ làmột trong những nền tảng kỹ thuật quan trọng trong công nghiệp máy tính Cho đếnnay, có thể nói rằng SQL đã được xem là ngôn ngữ chuẩn trong cơ sở dữ liệu Các hệquản trị cơ sở dữ liệu quan hệ thương mại hiện có như Oracle, SQL Server, Informix,DB2, đều chọn SQL làm ngôn ngữ cho sản phẩm của mình

Trang 21

Vậy thực sự SQL là gì? Tại sao nó lại quan trọng trong các hệ quản trị cơ sở dữliệu? SQL có thể làm được những gì và như thế nào? Nó được sử dụng ra sao trongcác hệ quản trị cơ sở dữ liệu quan hệ? Nội dung của chương này sẽ cung cấp chochúng ta cái nhìn tổng quan về SQL và một số vấn đề liên quan

I.4.1 SQL là ngôn ngữ cơ sở dữ liệu quan hệ

SQL, viết tắt của Structured Query Language (ngôn ngữ hỏi có cấu trúc), làcông cụ sử dụng để tổ chức, quản lý và truy xuất dữ liệu đuợc lưu trữ trong các cơ sở

dữ liệu SQL là một hệ thống ngôn ngữ bao gồm tập các câu lệnh sử dụng để tươngtác với cơ sở dữ liệu quan hệ

Tên gọi ngôn ngữ hỏi có cấu trúc phần nào làm chúng ta liên tưởng đến mộtcông cụ (ngôn ngữ) dùng để truy xuất dữ liệu trong các cơ sở dữ liệu Thực sự mà nói,khả năng của SQL vượt xa so với một công cụ truy xuất dữ liệu, mặc dù đây là mụcđích ban đầu khi SQL được xây dựng nên và truy xuất dữ liệu vẫn còn là một trongnhững chức năng quan trọng của nó SQL được sử dụng để điều khiển tất cả các chứcnăng mà một hệ quản trị cơ sở dữ liệu cung cấp cho người dùng bao gồm:

• Định nghĩa dữ liệu: SQL cung cấp khả năng định nghĩa các cơ sở dữ liệu,

các cấu trúc lưu trữ và tổ chức dữ liệu cũng như mối quan hệ giữa các thànhphần dữ liệu

• Truy xuất và thao tác dữ liệu: Với SQL, người dùng có thể dễ dàng thực

hiện các thao tác truy xuất, bổ sung, cập nhật và loại bỏ dữ liệu trong các cơ

sở dữ liệu

• Điều khiển truy cập: SQL có thể được sử dụng để cấp phát và kiểm soát các

thao tác của người sử dụng trên dữ liệu, đảm bảo sự an toàn cho cơ sở dữliệu

• Đảm bảo toàn vẹn dữ liệu: SQL định nghĩa các ràng buộc toàn vẹn trong cơ

sở dữ liệu nhờ đó đảm bảo tính hợp lệ và chính xác của dữ liệu trước cácthao tác cập nhật cũng như các lỗi của hệ thống

Như vậy, có thể nói rằng SQL là một ngôn ngữ hoàn thiện được sử dụng trongcác hệ thống cơ sở dữ liệu và là một thành phần không thể thiếu trong các hệ quản trị

cơ sở dữ liệu Mặc dù SQL không phải là một ngôn ngữ lập trình như C, C++, Java, song các câu lệnh mà SQL cung cấp có thể được nhúng vào trong các ngôn ngữ lậptrình nhằm xây dựng các ứng dụng tương tác với cơ sở dữ liệu

Khác với các ngôn ngữ lập trình quen thuộc như C, C++, Java, SQL là ngônngữ có tính khai báo Với SQL, người dùng chỉ cần mô tả các yêu cầu cần phải thựchiện trên cơ sở dữ liệu mà không cần phải chỉ ra cách thức thực hiện các yêu cầu nhưthế nào Chính vì vậy, SQL là ngôn ngữ dễ tiếp cận và dễ sử dụng

Trang 22

I.4.2 Vai trò của SQL

Bản thân SQL không phải là một hệ quản trị cơ sở dữ liệu, nó không thể tồn tạiđộc lập SQL thực sự là một phần của hệ quản trị cơ sở dữ liệu, nó xuất hiện trong các

hệ quản trị cơ sở dữ liệu với vai trò ngôn ngữ và là công cụ giao tiếp giữa người sửdụng và hệ quản trị cơ sở dữ liệu

Trong hầu hết các hệ quản trị cơ sở dữ liệu quan hệ, SQL có những vai trò nhưsau:

• SQL là ngôn ngữ hỏi có tính tương tác: Người sử dụng có thể dễ dàng thông

qua các trình tiện ích để gởi các yêu cầu dưới dạng các câu lệnh SQL đến cơ sở dữliệu và nhận kết quả trả về từ cơ sở dữ liệu

• SQL là ngôn ngữ lập trình cơ sở dữ liệu: Các lập trình viên có thể nhúng các

câu lệnh SQL vào trong các ngôn ngữ lập trình để xây dựng nên các chương trình ứngdụng giao tiếp với cơ sở dữ liệu

• SQL là ngôn ngữ quản trị cơ sở dữ liệu: Thông qua SQL, người quản trị cơ

sở dữ liệu có thể quản lý được cơ sở dữ liệu, định nghĩa các cấu trúc lưu trữ dữ liệu,điều khiển truy cập cơ sở dữ liệu,

• SQL là ngôn ngữ cho các hệ thống khách/chủ (client/server): Trong các hệ

thống cơ sở dữ liệu khách/chủ, SQL được sử dụng như là công cụ để giao tiếp giữacác trình ứng dụng phía máy khách với máy chủ cơ sở dữ liệu

• SQL là ngôn ngữ truy cập dữ liệu trên Internet: Cho đến nay, hầu hết các máy

chủ Web cũng như các máy chủ trên Internet sử dụng SQL với vai trò là ngôn ngữ đểtương tác với dữ liệu trong các cơ sở dữ liệu

• SQL là ngôn ngữ cơ sở dữ liệu phân tán: Đối với các hệ quản trị cơ sở dữ liệu

phân tán, mỗi một hệ thống sử dụng SQL để giao tiếp với các hệ thống khác trênmạng, gởi và nhận các yêu cầu truy xuất dữ liệu với nhau

• SQL là ngôn ngữ sử dụng cho các cổng giao tiếp cơ sở dữ liệu: Trong một hệ

thống mạng máy tính với nhiều hệ quản trị cơ sở dữ liệu khác nhau, SQL thường được

sử dụng như là một chuẩn ngôn ngữ để giao tiếp giữa các hệ quản trị cơ sở dữ liệu

II Lý thuyết về cách thức quản lý điểm

Dựa theo quyết định số 3676/GD-ĐT ngày 9/12/1994 của Bộ trưởng Bộ Giáodục và đào tạo về các quy định và cách thức tính điểm thi, điểm tổng kết, xét tốtnghiệp của sinh viên

Trang 23

II.1 Đối tượng sử dụng

Giáo vụ đóng vai trò Admin: lập bảng phân công giảng dạy các môn học, quản

lý điểm và thông tin của sinh viên

Giảng viên đóng vai trò Giangvien: nhập bảng điểm, quản lý thông tin lớp, sinh

viên

Sinh viên đóng vai trò User: xem điểm tổng kết các môn học, lập báo cáo các

môn học đã kết thúc

II.2 Quá trình quản lý điểm

Trong mỗi kỳ thi, đối với học phần (hoặc nhóm học phần) xác định, sinh viênchỉ được thi một lần Nếu thi chưa đạt hoặc thi đạt nhưng chưa thoả mãn, xin thi lấyđiểm cao hơn, thì sinh viên được thi lại ở kỳ sau và chỉ được thi lại không qua 02 lần.Tuỳ theo đặc điểm của từng học phần, từng trường mà Hiệu trưởng qui định số lần thiđối với trường hợp thi chưa đạt và là điểm thi lần cuối cùng đối với trường hợp đã đạtnhưng thi lại để lấy điểm cao hơn

- Điểm trung bình chung học tập của mỗi năm học, mỗi khoá học và điểmtrung bình chung tất cả các học phần tính từ đầu khoá học được tính theo công thức vàđược tính đến hai chữ số thập phân:

Trong đó : A là điểm trung bình chung học tập năm học, mỗi khoáhọc hoặc điểm trung bình chung các học phần tính từ đầu khoá học

ai là điểm cao nhất trong các lần thi của học phần thứ i

N i

i i

n

n a

1

1

A =

Trang 26

CHƯƠNG 2

PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG

I.1 Mô tả bài toán

• Bài toán Quản lý điểm của một khoa đối với các trường Đại học: Công tác

quản lý điểm (kết quả học tập) của sinh viên đóng vai trò hết sức quan trọng đối vớihoạt động của một khoa trong các trường đại học Trong khoảng 10 năm trở lại đâycông tác quản lý điểm đã dần được tin học hóa nhằm đem lại hiệu quả cao hơn, tincậy hơn

• Bài toán Quản lý điểm đặt ra các vấn đề cơ bản như sau: Thể hiện được mô

hình tổ chức quản lý sinh viên theo khóa, theo lớp, theo các loại hình đào tạo; Quản lýcác môn học của các lớp theo học kỳ và kết quả học tập của sinh viên đối với các mônhọc đó Hệ thống còn phải cho phép tạo ra các báo cáo từ kết quả học tập của sinhviên nhằm phục vụ công tác điều hành huấn luyện như: Tổng kết kết quả học tập theo

kỳ, theo năm, theo khóa; In Danh sách thi lại; In Bảng điểm học kỳ; In Bảng điểm cánhân…

Ngoài các chức năng chính như trên, hệ thống này còn cần thêm một số chứcnăng khác như: cập nhật các loại danh mục dữ liệu (danh mục lớp, danh mục loại hìnhđào tạo, danh mục ngành học …); các chức năng sao lưu và phục hồi dữ liệu; cácchức năng trợ giúp …

• Có thể mô tả sơ lược các công việc chính (đối với 1 khóa học) trong hệ thốngquản lý điểm của một khoa như sau:

1 Với mỗi khóa học mới thì cần phải có mô tả cho khóa mới này

2 Mô tả danh mục các lớp cho khóa mới

3 Với mỗi lớp đã có cập nhật danh sách sinh viên của lớp

4 Với mỗi học kỳ cần cập nhật danh sách môn học, danh sách các lớp họcphần sẽ mở trong kỳ

5 Khi có kết quả các lớp học phần -> Cập nhật điểm môn học / lớp

6 Tổng kết kết quả học tập học kỳ, năm học, khóa học

7 In Danh sách thi lại

8 In Bảng điểm học kỳ

9 In Bảng điểm cá nhân

I.2 Yêu cầu

Xây dựng hệ thống Quản lý điểm phục vụ công tác quản lý điểm trong mộtkhoa của các trường ĐH và CĐ với các yêu cầu sau:

Trang 27

Quản trị viên có các chức năng:

- Như người dùng bình thường

- Được quyền tạo, thay đổi, xóa thông tin các khóa học

- Quyền tạo, thay đổi, xóa thông tin các ngành học

- Quyền tạo, thay đổi, xóa thông tin người dùng

- Quyền tạo, thay đổi, xóa thông tin các hệ đào tạo

- Quyền tạo, thay đổi, xóa thông tin các lớp học

- Quyền tạo, thay đổi, xóa thông tin học kỳ

- Quyền tạo, thay đổi thông tin giáo viên

- Quyền tạo, thay đổi, xóa điểm các sinh viên

- Quyền sao lưu phục hồi cơ sở dữ liệuQuản lý viên có các chức năng:

- Được quyền tạo, thay đổi, xóa thông tin các sinh viên

- Quyền tạo, thay đổi, xóa điểm của các sinh viên

- Quyền tạo, thay đổi, xóa môn học

- Quyền thống kê in ấn

* Yêu cầu về hệ thống

Xây dựng hệ thống mang tính bảo mật, người dùng dễ dàng sử dụng Sử dụngngôn ngữ lập trình C# dựa theo mô hình 3 layer để dễ kiểm soát lỗi trong quá trình sửdụng,và hệ quản trị CSDL SQL Sever 2005…

Trang 28

I.3 Phân tích và đặc tả yêu cầu

Khối lớp với hệ đào tạo

Một hệ đào tạo có ít nhất 1 khối lớp và có thể có nhiều khối lớp Một khối lớpthì thuộc một hệ đào tạo nhất định

Trang 29

Sinh viên với học phần

Một sinh viên có thể học ở nhiều học phần khác nhau Một học phần có thể cónhiều sinh viên theo học

Học phần với giảng viên

Một giảng viên có thể không tham gia giảng dạy bất cứ một học phần nào vàcũng có thể tham gia giảng dạy ở nhiều học phần khác nhau Một học phần đượcgiảng dạy bởi một giảng viên nhất định

Kế hoạch giảng dạy với học phần

Một kế hoạch giảng dạy có nhiều học phần Một học phần thì thuộc 1 kế hoạchgiảng dạy nhất định

Trang 30

Lớp với giảng viên

Một giảng viên có thể làm cố vấn học tập cho nhiều lớp hoặc không làm cố vấnhọc tập cho bất kì một lớp nào Một lớp thì có một cố vấn học tập nhất định

Khối lớp với kế hoạch giảng dạy

Một khối lớp có nhiều kế hoạch giảng dạy tùy thuộc vào từng học kỳ, năm học.Một kế hoạch giảng dạy thuộc một khối lớp nhất định

Học kỳ với kế hoạch giảng dạy

Một học kỳ có nhiều kế hoạch giảng dạy tùy thuộc vào từng khối lớp khác nhau.Một kế hoạch giảng dạy thuộc một học kỳ nhất định

Mô hình thực thể kết hợp

Trang 31

Hình 5: Mô hình thực thể kết hợp

Trang 32

I Thiết kế cơ sở dữ liệu

I.1 Đối tượng và mối quan hệ được quản lý

I.1.1 Đối tượng quản lý của khoa bao gồm

I.1.2 Mối quan hệ chính được quản lý

Mối quan hệ chính được quản lý là kết quả học tập của sinh viên theo từngnhóm học phần thuộc một học phần nào đó Sau đó thống kê theo từng học kỳ vàthống kê toàn khóa học

Kết quả của sinh viên được tổng hợp từ 2 nguồn dữ liệu

 Điểm: Điểm của sinh viên được phân thành 2 cột

 Điểm thi lần 1 kết thúc học phần

 Điểm thi lần 2 nếu lần thi 1 điểm thi của sinh viên không đạt

hoặc muốn cải thiện điểm cao hơn

 Thông tin học phần: Bao gồm

 Một học phần có bao nhiêu đơn vị học trình

Từ những nguồn dữ liệu trên hệ thống sẽ tự động tính kết quả học tập của sinh viên như sau:

- Điểm trung bình chung học tập của mỗi năm học, mỗi khoá học vàđiểm trung bình chung tất cả các học phần tính từ đầu khoá học được tính theo côngthức và được tính đến hai chữ số thập phân:

N i

i i

n

n a

1

1

A =

Trang 33

Trong đó : A là điểm trung bình chung học tập năm học, mỗi khoáhọc hoặc điểm trung bình chung các học phần tính từ đầu khoá học.

ai là điểm cao nhất trong các lần thi của học phần thứ i

 Kết quả xếp loại các sinh viên trong lớp

 Danh sách các sinh viên thi lại

I.2 Bảng từ điển và thuộc tính của các đối tượng

I.2.1 Bảng từ điển dữ liệu

Trang 34

Mối kết hợp

2 TenHeDT Tên hệ đào tạo HeDaoTao

4 TenKhoiLop Tên khối lớp KhoiLop

16 DonViHocTrinh Đơn vị học trình HocPhan

20 DiemThiLan1 Điểm thi lần 1 KetQua

21 DiemThiLan2 Điểm thi lần 2 KetQua

22 DiemTongKet Điểm tổng kết KetQua

23 MaKHGD Mã kế hoạch giảng dạy KeHoachGiangDay

24 Username Mã người dùng Users

25 Password Mật khẩu người dùng Users

26 Quyen Phân quyền người dùng Users

I.2.2 Thuộc tính của các đối tượng

Sinh viên

Tên thực thể : Sinh Viên

Tên viết tắt : SinhVien

Ý nghĩa : Dùng để lưu thông tin của sinh viên như: Mã sinh viên, tên, ngày sinh.

Các sinh viên khác nhau được xác định thông qua mã sinh viên

SinhVien

MaSV

TenSVNgaySinh

Trang 35

Tên thực thể : Lớp

Tên viết tắt : Lop

Ý nghĩa: Dùng để lưu trữ thông tin của lớp như : Mã lớp, tên lớp, giảng viên.

Các lớp khác nhau được xác định thông qua mã lớp

Khối lớp

Tên thực thể : Khối lớp

Tên viết tắt : KhoiLop

Ý nghĩa : Dùng để lưu thông tin của khối lớp như: Mã khối lớp, tên khối lớp

Các khối lớp khác nhau được xác định thông qua mã khối lớp

Hệ đào tạo

Tên thực thể : Hệ đạo tạo

Tên viết tắt : HeDaoTao

Ý nghĩa : Dùng để lưu thông tin của các hệ đào tạo như: Mã hệ đào tạo, tên hệ

Trang 36

Ý nghĩa : Dùng để lưu thông tin của các học phần như: Mã học phần, tên học

phần, số tín chỉ, số tiết lí thuyết,số tiết thực hành, phần trăm điểm quá trình, phần trămđiểm thi

Các học phần khác nhau được xác định thông qua mã học phần

Học kỳ

Tên thực thể : Học kỳ

Tên viết tắt : HocKy

Ý nghĩa : Dùng để lưu thông tin của các học kỳ như: Mã học kỳ, Tên học kỳ,

Năm học

Các học kỳ khác nhau được xác định thông qua mã học kì

Giảng viên

Tên thực thể : Giảng viên

Tên viết tắt : GiangVien

Ý nghĩa : Dùng để lưu thông tin giảng viên như: Mã giảng viên, tên giảng viên

Các giảng viên khác nhau được xác định thông qua mã giảng viên

HocPhan

MaHP

TenHPDonViHocTrinh

HocKy

MaHK

TenHKNamHoc

GiangVien

MaGV

TenGV

Trang 37

Tên Thực thể : Users

Tên viết Tắt : User

Ý nghĩa: Dùng để lưu thông tin người dùng, người quản lý, phân quyền người

dùng

Các người dùng, người quản lý khác nhau được xác định thông qua tến và cấp

độ phân quyền người dùng

I.1 Mô hình dữ liệu quan hệ giữa các bảng

HeDaoTao(MaHeDT, TenHeDT)

KhoiLop(MaKhoiLop, TenKhoiLop, MaHeDT)

Lop(MaLop, TenLop, MaKhoiLop, MaGV)

SinhVien(MaSV, TenSV, NgaySinh, MaLop)

KetQua(MaSV, MaNhomHP, DiemThiLan1, DiemThiLan2, DiemTongKet) KeHoachGiangDay(MaKHGD, MaHK, MaKhoiLop)

HocPhan(MaHP, TenHP,DonViHocTrinh)

HocKy(MaHK, TenHK, NamHoc)

GiangVien(MaGV, TenGV, DienThoai, DiaChi)

Users Username

PasswordQuyen

Ngày đăng: 20/04/2021, 23:43

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] PGS.TS Phan Huy Khánh. Bài Giảng Phân Tích Thiết Kế Hệ Thống Hướng Đối Tượng. Khoa Công Nghệ Thông Tin Đại Học Bách Khoa Đà Nẵng Sách, tạp chí
Tiêu đề: Bài Giảng Phân Tích Thiết Kế Hệ Thống HướngĐối Tượng
[2] Jacque Arsac. Nhập môn lập trình. Nguyên bản : Premières lecons de programmation. Trung tâm hệ thống Thông tin ISC, Hà nội 1991, 241 tr Sách, tạp chí
Tiêu đề: Nhập môn lập trình
[3] Doug Cooper. Standard Pascal User Reference Manual. W.W.Norton &Company, 1983, 476 tr Sách, tạp chí
Tiêu đề: Standard Pascal User Reference Manua
[4] Phan Huy Khánh, Võ Trung Hùng. Thiết kế cơ sở dữ liệu đa ngữ ngữ pháp tiếng Việt. Tạp chí Khoa học Công nghệ, Số 36+37, 2002, tr19-24 Sách, tạp chí
Tiêu đề: Thiết kế cơ sở dữ liệu đa ngữ ngữ pháptiếng Việt
[5] KS. Trịnh Quốc Tiến. Visual C# 2008. Nhà xuất bản Hồng Đức Sách, tạp chí
Tiêu đề: Visual C# 2008
Nhà XB: Nhà xuất bản Hồng Đức
[6] Trần Nguyên Phong. Giáo Trình SQL. Đại Học Khoa Học Huế [7] Các tài liệu tham khảo từ nguồn Internet[8] Sách, tạp chí
Tiêu đề: Giáo Trình SQL

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w