ĐẠI HỌC ĐÀ NẴNG TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THÔNG TIN BÁO CÁO TỔNG KẾT ĐỀ TÀI KHOA HỌC VÀ CÔNG NGHỆ CẤP CƠ SỞ NGHIÊN CỨU, XÂY DỰNG VÀ TRIỂN KHAI HỆ THỐNG ỨNG DỤNG HỖ TRỢ CÔNG TÁC QUẢN LÝ VÀ ĐIỀU HÀNH CẤP KHOA Mã số: T2016-07-06 Chủ nhiệm đề tài: TS. LÊ MINH THÁI

Đà Nẵng, 12/2016

ĐẠI HỌC ĐÀ NẴNG TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THÔNG TIN BÁO CÁO TỔNG KẾT ĐỀ TÀI KHOA HỌC VÀ CÔNG NGHỆ CẤP CƠ SỞ NGHIÊN CỨU, XÂY DỰNG VÀ TRIỂN KHAI HỆ THỐNG ỨNG DỤNG HỖ TRỢ CÔNG TÁC QUẢN LÝ VÀ ĐIỀU HÀNH CẤP KHOA Mã số: T2016-07-06 Chủ nhiệm đề tài: TS. LÊ MINH THÁI

Đà Nẵng, 12/2016

Thành viên tham gia:

- Lê Minh Thái, chủ trì đề tài

Đơn vị phối hợp:

- Khoa Công nghệ thông tin trường Cao đẳng Công nghẹ thông tin phối hợp

triển khai thử nghiệm.

MỤC LỤC

LỜI MỞ ĐẦU ............................................................................................................ 1

1. LÝ DO CHỌN ĐỀ TÀI ......................................................................................................................................... 2 2. MỘT SỐ NGHIÊN CỨU CÙNG LĨNH VỰC TRONG VÀ NGOÀI NƯỚC ....................................................................... 3 3. MỤC ĐÍCH CỦA ĐỀ TÀI ..................................................................................................................................... 4 4. ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU .............................................................................................................. 4 5. NỘI DUNG NGHIÊN CỨU ................................................................................................................................... 4

CHƯƠNG 1. GIỚI THIỆU TỔNG QUAN .............................................................. 2

2.1. PHÁT TRIỂN CÁC MÔ HÌNH ỨNG DỤNG .............................................................................................. 6 2.1.1. MÔ HÌNH CLIENT/SERVER TRUYỀN THỐNG ................................................................................................ 6 2.1.1.1. Chương trình Web Client/Server ..................................................................................................... 6 2.1.1.2. Cấu hình dữ liệu Client/Server truyền thống..................................................................................... 7 2.1.2. Kiến trúc Client/Server 2 tầng (two-tier Client/Server) ...................................................................... 8 2.1.3. Kiến trúc Client/Server 3 tầng (three-tier Client/Server) .................................................................... 9 2.2. KIẾN TRÚC .NET ..................................................................................................................................... 10 2.2.1. Sơ lược về .NET ................................................................................................................................ 10 2.2.2. .NET Servers ..................................................................................................................................... 10 2.2.3. .NET Framework ............................................................................................................................... 10 2.3. HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU SQL SERVER ..................................................................................... 11 2.3.1. Giới thiệu ........................................................................................................................................... 11 2.3.2. Các thành phần quan trọng trong SQL Server ................................................................................... 12 2.3.2.1. Relational Database Engine - Lõi của SQL Server: ........................................................................ 12 2.4. DỊCH VỤ WEB (SERVICE IIS - INTERNET INFORMATION SERVICE) ....................................................... 13 2.4.1. Giới thiệu IIS ..................................................................................................................................... 13 2.4.2. Nhiệm vụ của IIS ............................................................................................................................... 13 2.4.3. Cơ chế hoạt động của IIS ................................................................................................................... 13 2.5. NGÔN NGỮ LẬP TRÌNH VISUAL BASIC.NET .................................................................................... 14 2.5.1. Sơ lược về Visual Basic.NET ............................................................................................................ 14 2.5.2. Đặc tính của VB.NET ........................................................................................................................ 14 2.6. GIỚI THIỆU NGÔN NGỮ UML (UNIFIELD MODELING LANGUAGE) ....................................................... 16 2.6.1. Định nghĩa UML ................................................................................................................................ 16 2.6.2. Các thành phần cơ bản của ngôn ngữ UML: ...................................................................................... 16 2.6.2. UML và các giai đoạn phát triển hệ thống ......................................................................................... 17

CHƯƠNG II: CƠ SỞ LÝ THUYẾT ........................................................................ 6

3.1. PHÂN TÍCH NGHIỆP VỤ......................................................................................................................... 19 3.1.1. Mô hình hệ thống ứng dụng ............................................................................................................... 19 3.1.2. Các mô hình Use case ........................................................................................................................ 19 3.1.3. Biểu đồ lớp ......................................................................................................................................... 22 3.2. TRIỂN KHAI ỨNG DỤNG ....................................................................................................................... 23

CHƯƠNG III. PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG .................................. 19

4.1. MÔ TẢ HỆ THỐNG .................................................................................................................................. 25 4.2. MỘT SỐ GIAO DIỆN ................................................................................................................................ 25 4.3. KẾT LUẬN ................................................................................................................................................ 28

CHƯƠNG IV: KẾT QUẢ NGHIÊN CỨU VÀ THỰC NGHIỆM ........................ 25

TÀI LIỆU THAM KHẢO ....................................................................................... 29

DANH MỤC HÌNH Hình 1 Mô hình Client/Server truyền thống .......................................................................... 7 Hình 2 Kiến trúc Client/Server 2 tầng ................................................................................. 8 Hình 3 Mô hình kiến trúc Client/Server 3 tầng ..................................................................... 9 Hình 4 Các thành phần chính của Microsoft.NET Framework ........................................... 11 Hình 5 Mô hình ứng dụng .................................................................................................. 19 Hình 6 Use Case hệ thống .................................................................................................. 20 Hình 7 Use Case sinh viên ................................................................................................. 21 Hình 8 Use Case cán bộ - giảng viên .................................................................................. 21 Hình 9 Use Case quản trị ................................................................................................... 22 Hình 10 Biểu đồ lớp tổng quát ........................................................................................... 23 Hình 11 Mô hình triển khai ứng dụng ................................................................................. 24 Hình 12 Giao diện chính .................................................................................................... 26 Hình 13 Giao diện của giảng viên ...................................................................................... 26 Hình 14 Giao diện của sinh viên ........................................................................................ 27

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc lập – Tự do – Hạnh phúc

ĐẠI HỌC ĐÀ NẴNG TRƯỜNG CĐ CÔNG NGHỆ THÔNG TIN

THÔNG TIN KẾT QUẢ NGHIÊN CỨU

1. Thông tin chung:

- Tên đề tài: “Nghiên cứu, xây dựng và triển khai hệ thống ứng dụng hỗ trợ công

tác quản lý và điều hành hoạt động cấp khoa”

- Mã số: T2016-07-06

- Chủ nhiệm: Lê Minh Thái

- Thành viên tham gia:

- Cơ quan chủ trì: trường Cao đẳng Công nghệ thông tin

- Thời gian thực hiện: từ tháng 01/2016 đến tháng 12/2016

2. Mục tiêu:

Nghiên cứu giải pháp, xây dựng và triển khai hệ thống ứng dụng công nghệ thông

tin và công tác quản lý và điều hành hoạt động cấp khoa nhằm nâng cao hiệu quả và

chất lượng quản lý điều hành hướng đến văn phòng “xanh – không giấy”

3. Tính mới và sáng tạo:

Mặc dù sử dụng các kiến thức và công nghệ phổ biến trong lập trình ứng dụng

nhưng đây là đề tài lần đầu được phát triển ở cấp khoa của một cơ sở giáo dục đại học.

4. Tóm tắt kết quả nghiên cứu:

Đề tài đã xây dựng được một hệ thống website tích hợp với hệ thống cơ sở dữ

liệu của khoa và các ứng dụng trước đó phục vụ cho công tác quản lý và điều hành

5. Tên sản phẩm:

Website điều hành khoa

6. Hiệu quả, phương thức chuyển giao kết quả nghiên cứu và khả năng áp

dụng:

Việc ứng dụng sản phẩm trong thực tiễn tại khoa Công nghêj thông tin của trường

đã nâng cao chất lượng hoạt động quản lý điều hành và chuyên môn của khoa.

Sản phẩm có thể triển khai cho các đơn vị khác cùng cấp sử dụng với yêu cầu về

hỗ trợ chi phí triển khai, bảo trì và đảm bảo quyền sở hữu trí tuệ.

7. Hình ảnh, sơ đồ minh họa chính: cntt.cit.udn.vn

Đà Nẵng, ngày18 tháng 12 năm 2016

Cơ quan chủ trì

Chủ nhiệm đề tài

LỜI MỞ ĐẦU

Khoa Công nghệ thông tin của trường Cao đẳng Công nghệ thông tin là một khoa

đào tạo với 30 cán bộ giảng viên và hơn 1000 sinh viên đang theo học. Khoa quản lý 4

phòng làm việc và 7 phòng thí nghiệm thực hành. Các hoạt động quản lý và điều hành

khoa trong đào tạo, sinh hoạt chuyên môn, công tác chủ nhiệm, … hiện đang được

thực hiện theo phương thức truyền thống qua các buổi hội họp, sinh hoạt và văn bản

giấy tờ. Phương thức này về cơ bản đáp ứng được các hoạt động quản lý tối thiểu

nhưng bộc lộ một số nhược điểm, hạn chế: chậm, rườm rà, tốn nhiều văn bản, thời

gian xử lý và không phù hợp với hình thức đào tạo tín chỉ khi mà mỗi sinh viên có thể

có một thời khóa biểu học tập riêng trong học kỳ.

Ngày nay công nghệ thông tin được ứng dụng rộng rãi trong mọi lĩnh vực kinh tế

xã hội. Trong các hoạt động quản lý, điều hành, công nghệ thông tin hỗ trợ theo dõi,

tác nghiệp và tổng hợp, phân tích số liệu mọi lúc mọi nơi trên nền tảng một hệ thống

dữ liệu thống nhất, trực tuyến.

Vì vậy, việc cải tiến phương thức quản lý điều hành là nhu cầu cần thiết nhằm

tăng cường khả năng ứng dụng công nghệ thông tin nâng cao chất lượng hoạt động

của khoa. Với mong muốn hoàn thiện thêm công cụ ứng dụng công nghệ thông tin

trong công tác, tác giả đã chọn đề tài “Nghiên cứu, xây dựng và triển khai hệ thống

ứng dụng hỗ trợ công tác quản lý và điều hành hoạt động cấp khoa”.

Đây là giải pháp để khắc phục những hạn chế trong quá trình hoạt động của

khoa, nâng cao hiệu quả công việc và phù hợp với một khoa đào tạo các chuyên ngành

trong lĩnh vực công nghệ thông tin.

Nội dung của đề tài gồm các phần sau:

Chương 1: Giới thiệu tổng quan.

Chương 2: Cơ sở lý thuyết.

Chương 3: Phân tích thiết kế hệ thống.

1

Chương 4: Kết quả thực nghiệm ứng dụng.

CHƯƠNG 1. GIỚI THIỆU TỔNG QUAN

1. Lý do chọn đề tài

Trong hoạt động đào tạo, các khoa đóng vai trò tổ chức giảng dạy và quản lý

chuyên môn, đồng thời trực tiếp quản lý sinh viên. Các nội dung công việc chính bao

gồm:

+ Báo giảng, phân công giảng dạy;

+ Theo dõi tình hình giảng dạy và học tập ở các lớp học phần;

+ Phân công hướng dẫn và quản lý các đồ án, thực tập;

+ Tổ chức đăng ký, phân công hướng dẫn và quản lý các đề tài khoa học;

+ Tổ chức và quản lý công tác chủ nhiệm lớp, cố vấn học tập;

+ Quản lý hoạt động chuyên môn của các bộ môn trực thuộc;

+ Quản lý các hoạt động hành chính, văn phòng khoa.

+ Chỉ đạo và tham gia quản lý các hoạt động của sinh viên;

Hiện nay, hoạt động khoa chủ yếu dựa trên hệ thống văn bản giấy tờ, điều hành

qua điện thoại, họp. Với đặc điểm của khoa giảng dạy rất khó tổ chức các cuộc họp

toàn khoa do giảng viên bận giờ giảng hoặc hướng dẫn đồ án. Cách tổ chức điều hành

như vậy dẫn đến hiệu quả thấp, bỏ sót công việc cần thực hiện hoặc thực hiện không

đúng kế hoạch đặt ra.

Ngoài ra, trong các học kỳ, văn phòng khoa thu nhận của sinh viên rất nhiều bài

tập, báo cáo in trên giấy. Các văn bản in cứng khó bảo quản lâu dài và khai thác, xây

dựng thư viện tham khảo cho các khóa học sau.

Về hạ tầng công nghệ thông tin, trường có sẵn hệ thống mạng nội bộ kết nối trực

tuyến với internet trực tuyến, sóng wifi phủ khắp khuôn viên và các phòng học, phòng

thí nghiệm thực hành. Khoa có máy chủ riêng với hệ thống máy trạm tại các phòng

làm việc. Các cán bộ giảng viên đều có máy tính xách tay, điện thoại di động, máy tính

bảng có khả năng truy cập internet.

Về phía sinh viên, do đặc điểm ngành nghề, đa số các em đều có máy tính xách

tay hoặc máy tính để bàn và các phương tiện di động kết nối được với internet.

Trước thực tiễn như vậy, với đặc điểm là khoa đào tạo chuyên ngành công nghệ

thông tin, nhu cầu cải tiến công tác quản lý và điều hành nhằm nâng cao hiệu quả công

việc là nhu cầu tất yếu. Phương pháp phổ biến hiện nay là xây dựng các ứng dụng

2

công nghệ thông tin hỗ trợ quản lý, điều hành và lưu trữ tài liệu. Các ứng dụng này

không có sẵn trên thị trường. Do đó, việc nghiên cứu, xây dựng và triển khai là rất cần

thiết.

2. Một số nghiên cứu cùng lĩnh vực trong và ngoài nước

a. Ngoài nước:

Hệ thống ứng dụng công nghệ thông tin trong hoạt động quản lý và điều hành là

phổ biến ở nước ngoài. Trong lĩnh vực đào tạo, hầu hết các cơ sở giáo dục đều có

website quản lý và điều hành. Để xây dựng các hệ thống đó đòi hỏi phải có hiểu biết

chuyên sâu về hoạt động quản lý điều hành; về phân tích và thiết kế hệ thống; về kỹ

thuật lập trình, thuật toán và phương pháp triển khai.

Trong từng vấn đề cụ thể có thể có các tài liệu khoa học được công bố. Tuy

nhiên, về vấn đề tổng thể như định hướng nghiên cứu của đề tài này thì không thấy có

tài liệu cụ thể nào.

Mặt khác, việc tham khảo trực tuyến chỉ có thể cho các nhìn nhận đánh giá bên

ngoài bởi vì không có tài khoản để đăng nhập vào các hệ thống đó để có thể khảo sát

nội dung quản lý bên trong.

Một trong những ứng dụng miễn phí cho cơ sở giáo dục là hệ thống Google Apps.

Google Apps là một bộ ứng dụng hỗ trợ văn phòng trực tuyến được cung cấp

miễn phí bởi Google, gồm các ứng dụng: soạn thảo văn bảo, soạn thảo bản tính, soạn

thảo trình chiếu, class room và các ứng dụng khác, cho phép người dùng tạo ra các tài

liệu trực tuyến và cho phép chia sẻ với người khác cũng như cho phép trình chiếu trực

tuyến thời gian thực và tương tác sửa chữa với mọi người.

Không thể phủ nhận tính hữu ích của ứng dụng Google Apps nhưng công cụ

này chỉ phù hợp cho việc triển khai sử dụng và chia sẻ các văn bản chung, chưa đáp

ứng các yêu cầu thực tế về hỗ trợ quản lý của khoa.

Khoa có tên miền www.itf.edu.vn được đăng ký trên Google Apps.

b. Trong nước

Các trường đại học, cao đẳng trong nước đều có hệ thống website. Tuy nhiên,

phần nhiều trong số đó là các website có tính chất quảng bá, giới thiệu về cơ sở đào

tạo.

Một số cơ sở như Đại học Hà nội, Đại học Hồng Đức, … có công trình nghiên

cứu về lĩnh vực này tuy nhiên chỉ dừng ở cấp trường và tập trung chủ yếu vào công tác

3

hành chính văn bản.

Về cấp khoa như định hướng của đề tài hầu như không có công trình nào đã thực

hiện.

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

Để đạt được mục đích cải tiến, nâng cao hiệu quả công tác quản lý và điều hành

hoạt động cấp khoa, đề tài đặt ra các mục tiêu sau:

+ Nghiên cứu cải tiến qui trình quản lý, điều hành hoạt động cấp khoa;

+ Phân tích thiết kế và xây dựng hệ thống ứng dụng công nghệ thông tin hỗ trợ;

+ Triển khai ứng dụng thực tế, hướng đến xây dựng văn phòng khoa “xanh”.

Trọng tâm của đề tài tập trung vào xây dựng một hệ thống cơ sở dữ liệu của khoa

thống nhất, trực tuyến và các phiên bản ứng dụng sử dụng để khai thác và xử lý dữ

liệu, bao gồm:

+ Phiên bản phần mềm quản lý văn phòng khoa: là công cụ sử dụng trên mạng

trực tuyến dành cho ban chủ nhiệm khoa, các trưởng bộ môn và thư ký khoa, hỗ trợ

cập nhật dữ liệu về chương trình đào tạo các ngành nghề; cơ cấu tổ chức và cán bộ

giảng viên; danh sách các lớp sinh hoạt và sinh viên; phân công giảng viên chủ nhiệm,

lập kế hoạch và báo giảng các học kỳ…

+ Phiên bản website tác nghiệp: dành cho cán bộ giảng viên và sinh viên tương

tác trực tuyến, cập nhật tài liệu giảng dạy, đăng ký thực tập, đồ án, nộp bài tập và

đăng các thông báo. Đồng thời, website khoa là phương tiện quảng bá hình ảnh của

khoa ra bên ngoài.

+ Phiên bản phần mềm sổ tay giảng viên: là công cụ dành cho giảng viên làm

công tác giảng dạy và chủ nhiệm lớp; theo dõi bài tập, điểm danh sinh viên…

4. Đối tượng và phạm vi nghiên cứu

4.1. Đối tượng nghiên cứu

- Các hoạt động quản lý và điều hành của bộ máy quản lý và văn phòng khoa

4.2. Phạm vi nghiên cứu

- Đơn vị cấp khoa đào tạo của trường Đại học, Cao đẳng, lấy mô hình hoạt động

của khoa Công nghệ thông tin trường Cao đẳng Công nghệ thông tin làm môi trường

cụ thể để triển khai ứng dụng.

5. Nội dung nghiên cứu

5.1. Nghiên cứu lý thuyết

4

- Tìm hiểu các hoạt động nghiệp vụ cấp khoa

- Phân tích và thiết kế hệ thống

5.2. Nghiên cứu thực nghiệm

- Sử dụng ngôn ngữ lập trình VB.NET, ASP.NET phát triển ứng dụng trên hệ

quản trị cơ sở dữ liệu MS SQL Server 2014

5

- Cài đặt và kiểm thử sản phẩm ứng dụng

CHƯƠNG II: CƠ SỞ LÝ THUYẾT

2.1. PHÁT TRIỂN CÁC MÔ HÌNH ỨNG DỤNG

2.1.1. Mô hình Client/Server truyền thống

Client/Server là một mô hình truyền thống của mạng máy tính, được áp dụng

rất rộng rãi trên thực tế, đặc biệt là mô hình cơ sở thực hiện chuyển tải thông tin, dữ

liệu trong môi trường web. Cơ chế thực hiện của mô hình này rất đơn giản: máy khách

(người dùng dịch vụ) gửi một yêu cầu (request) đến máy chủ (máy cung ứng dịch vụ),

máy chủ sẽ xử lý và trả kết quả (dữ liệu) về cho máy khách.

2.1.1.1. Chương trình Web Client/Server

Thuật ngữ server được dùng cho những chương trình thi hành như một dịch vụ

trên toàn mạng. Các chương trình server này chấp nhận tất cả các yêu cầu hợp lệ đến

từ mọi nơi trên mạng, sau đó nó thi hành dịch vụ và trả kết quả về máy yêu cầu. Một

chương trình được coi là client khi nó gửi các yêu cầu tới máy có chương trình server

và chờ đợi câu trả lời từ server. Chương trình server và client giao tiếp với nhau bằng

các thông điệp (messages) thông qua một cổng truyền thông liên tác IPC (Interprocess

Communication).

Chương trình Client/Server giao tiếp được với nhau thông qua các chuẩn thống

nhất trong môi trường mạng (gọi là chuẩn giao thức), trong đó bộ giao thức chính là

TCP/IP (Transmission Control Protocol/Internet Protocol). Chuẩn giao thức TCP/IP hỗ

trợ Thực tế thì mô hình client/server là sự mở rộng tự nhiên và tiện lợi cho truyền

thông liên tiến trình trên các máy tính cá nhân. Mô hình này cho phép xây dựng các

chương trình client/server một cách dễ dàng và sử dụng chúng để liên tác với nhau để

đạt hiệu quả hơn.

Sự thuận lợi của phương pháp này là nó có thể làm việc trên bất cứ một mạng

máy tính nào có hỗ trợ giao thức truyền thông chuẩn cụ thể ở đây là giao thức TCP/IP.

Với các giao thức chuẩn này cũng giúp cho các nhà sản xuất có thể tích hợp nhiều sản

phẩm khác nhau của họ lên mạng mà không gặp phải khó khăn gì. Với các chuẩn này

thì các chương trình server cho một dịch vụ nào đấy có thể thi hành trên một hệ thống

chia sẻ thời gian (timesharing system) với nhiều chương trình và dịch vụ khác hoặc nó

có thể chạy trên chính một máy tính các nhân bình thường. Có thể có nhiều chương

server cùng làm một dịch vụ, chúng có thể nằm trên nhiều máy tính hoặc một máy

tính.

Mô hình client/server cung cấp một nền tảng lý tưởng cho phép tích hợp các kỹ

6

thuật hiện đại như mô hình thiết kế hướng đối tượng, hệ chuyên gia, hệ thông tin địa lý

... Một trong những vấn đề nảy sinh trong mô hình này đó là tính an toàn và bảo mật

thông tin trên mạng. Do phải trao đổi dữ liệu giữa 2 máy ở 2 khu vực khác nhau cho

nên dễ dàng xảy ra hiện tượng thông tin truyền trên mạng bị lộ.

Thực tế trong các ứng dụng của mô hình client/server, các chức năng hoạt động

chính là sự kết hợp giữa client và server với sự chia sẻ tài nguyên, dữ liệu trên cả 2

máy Vai trò của client Trong mô hình client/server, client được coi như là người sử

dụng các dịch vụ trên mạng do một hoặc nhiều máy chủ cung cấp và server được coi

như là người cung cấp dịch vụ để trả lời các yêu cầu của các clients. Điều quan trọng

là phải hiểu được vai trò hoạt động của nó trong một mô hình cụ thể, một máy client

trong mô hình này lại có thể là server trong một mô hình khác.

Tính đa nhiệm đảm bảo một tiến trình không sử dụng toàn bộ tài nguyên hệ

thống. Vai trò của server. Như chúng ta đã bàn ở trên, server như là một nhà cung cấp

dịch vụ cho các clients yêu cầu tới khi cần, các dịch vụ như cơ sở dữ liệu, in ấn, truyền

file, hệ thống... Các ứng dụng server cung cấp các dịch vụ mang tính chức năng để hỗ

trợ cho các hoạt động trên các máy clients có hiệu quả hơn. Sự hỗ trợ của các dịch vụ

này có thể là toàn bộ hoặc chỉ một phần thông qua IPC.

Để đảm bảo tính an toàn trên mạng cho nên server này còn có vai trò như là một

nhà quản lý toàn bộ quyền truy cập dữ liệu của các máy clients, nói cách khác đó là vai

trò quản trị mạng. Có rất nhiều cách thức hiện nay nhằm quản trị có hiệu quả, một

trong những cách đang được sử dụng đó là dùng tên Login và mật khẩu

Hình 1 Mô hình Client/Server truyền thống

2.1.1.2. Cấu hình dữ liệu Client/Server truyền thống

Nhìn chung mọi ứng dụng cơ sở dữ liệu đều bao gồm các phần:

7

- Thành phần xử lý ứng dụng (Application processing components)

- Thành phần phần mềm cơ sở dữ liệu (Database software componets)

- Bản thân cơ sở dữ liệu (The database itself)

5 mô hình kiến trúc dựa trên cấu hình phân tán về truy nhập dữ liệu của hệ

thống máy tính Client/Server:

- Mô hình cơ sở dữ liệu tập trung (Centralized database model)

- Mô hình cơ sở dữ liệu theo kiểu file - server (File - server database model)

- Mô hình xử lý từng phần cơ sở dữ liệu (Database extract processing model)

- Mô hình cơ sở dữ liệu Client/Server (Client/Server database model)

- Mô hình cơ sở dữ liệu phân tán (Distributed database model)

2.1.2. Kiến trúc Client/Server 2 tầng (two-tier Client/Server)

Kiến trúc client/server 2 tầng là kiến trúc đơn giản nhất, được ứng dụng cho nhiều

mô hình phần mềm truyền thống. Một ứng dụng hai tầng cung cấp nhiều trạm làm việc

với một tầng trình diễn thống nhất, tầng này truyền tin với tầng lưu trữ dữ liệu tập

trung. Tầng trình diễn thông thường là client, và tầng lưu trữ dữ liệu là server.

Trong ứng dụng hai tầng truyền thống, khối lượng công việc xử lý phần lớn được

dành cho phía client trong khi server chỉ đơn giản đóng vai trò như là chương trình

kiểm soát luồng vào ra giữa các ứng dụng và điều khiển dữ liệu. Kết quả là không chỉ

hiệu năng của ứng dụng bị giảm đi do tài nguyên hạn chế của máy trạm, mà khối

lượng dữ liệu truyền đi trên mạng cũng tăng theo. Khi toàn bộ ứng dụng được xử lý

trên một máy trạm, ứng dụng bắt buộc phải được cung cấp nhiều dữ liệu trước khi có

thể đưa ra bất kỳ kết quả xử lý nào cho người dùng. Điều này có nghĩa là nó sẽ làm

giảm hiệu năng của mạng. Một vấn đề thường gặp khác đối với ứng dụng hai tầng là

vấn đề bảo trì. Chỉ cần một thay đổi nhỏ đối với ứng dụng đồng nghĩa với việc phải

thay đổi lại toàn bộ ứng dụng client và server.

8

Hình 2 Kiến trúc Client/Server 2 tầng *Ưu điểm:

Đảm bảo nhất quán dữ liệu, lưu trữ tập trung, chia sẻ cho nhiều người dùng đồng

thời.

* Nhược điểm

- Các xử lý tra cứu và cập nhật dữ liệu phần lớn được thực hiện ở Client.

- Khó khăn trong việc bảo trì và nâng cấp.

- Khối lượng dữ liệu truyền trên mạng lớn.

- Khả năng bảo mật thấp, để bị tấn công do truy nhập trực tiếp

2.1.3. Kiến trúc Client/Server 3 tầng (three-tier Client/Server)

Theo kiến trúc ba tầng, một ứng dụng được chia thành ba tầng tách biệt nhau về

mặt logic. Tầng đầu tiên là tầng trình diễn thường bao gồm các giao diện đồ họa, có

nhiệm vụ nhận dữ liệu và định dạng nó để hiển thị . Tầng thứ hai, còn được gọi là tầng

trung gian hay tầng tác nghiệp. Và tầng thứ ba là tầng chứa dữ liệu cần cho ứng dụng.

Về cơ bản tầng thứ 3 là chương trình thực hiện các lời gọi hàm để tìm kiếm dữ liệu cần

thiết. Sự tách biệt giữa chức năng xử lý với giao diện đã tạo nên sự linh hoạt cho việc

thiết kế ứng dụng làm trung gian chuyển yêu cầu từ tầng trình diễn ứng dụng đến tầng

quản lý cơ sở dữ liệu nhờ việc khởi tạo, đóng mở và giải phóng các socket. Nhiều giao

diện người dùng được xây dựng và triển khai mà không làm thay đổi logic ứng dụng.

Tầng thứ ba chứa dữ liệu cần thiết cho ứng dụng, tất cả nguồn thông tin dữ liệu như cơ

sở dữ liệu như Oracale, SQL Server hoặc tài liệu XML được tập trung tại máy chủ

trung tâm.

* Ưu điểm

- Hỗ trợ nhiều người dùng chung

- Giảm bớt lưu lượng xử lý cho Client, không yêu cầu máy tính Client có cấu hình

mạnh.

9

Hình 3 Mô hình kiến trúc Client/Server 3 tầng

- Xử lý và cập nhật dữ liệu tập trung tại Application Server; dễ quản lý và bảo trì.

- Xử lý truy cập và quản lý dữ liệu tập trung tại Database Server.

* Nhược điểm

- Phải sử dụng thêm một Application Server .

- Phụ thuộc vào đường truyền kết nối Internet.

2.2. KIẾN TRÚC .NET

2.2.1. Sơ lược về .NET

Kiến trúc .NET được giới thiệu bởi Microsoft, phát triển thành sản phẩm thương

mại chính của Microsoft từ các hệ điều hành (OS) Windows 2000 về sau, đây là bước

phát triển mang tính đột phá của Microsoft. .NET là tầng trung gian thiết lập các ứng

dụng cơ sở (Applications basic) làm nền tảng cho việc phát triển các ứng dụng đa ngôn

ngữ dựa trên công nghệ Microsoft. .NET cung cấp mọi dịch vụ cơ bản cho phép tạo ra,

nạp và truy xuất lên thiết bị (.NET Devices),

2.2.2. .NET Servers

Mục tiêu chính của .NET là giúp ta giảm thiểu tối đa công việc thiết kế hệ thống

công nghệ thông tin phân tán (distributed system). Đa số công việc lập trình phức tạp

đòi hỏi đều được thực hiện trước ở hậu trường (back end) trong các gói thư viện tích

hợp sẵn ở hệ điều hành để cung cấp dịch vụ. Microsoft đã đáp ứng với bộ sưu tập

.NET Enterprise Servers, bộ này chuyên dùng và hỗ trợ mọi đặc tính (features) cần

thiết cho một hệ thống công nghệ thông tin phân tán.

2.2.3. .NET Framework

Một trong những thành phần quan trọng của .NET là .NET Framework. Đây là nền

tảng cho mọi công cụ phát triển các ứng dụng (application) .NET

.NET Framework bao gồm:

- Môi trường vận hành nền (Base Runtime Environment)

- Bộ sưu tập nền các loại đối tượng (a set of foundation classes)

Môi trường vận hành nền (Base Runtime Environment) hoạt động giống như hệ

điều hành cung cấp các dịch vụ trung gian giữa ứng dụng (application) và các thành

phần phức tạp của hệ thống. Bộ sưu tập nền các loại đối tượng (a set of foundation

classes) bao gồm một số lớn các công dụng đã soạn và kiểm tra trước, như: giao dịch

với hệ thống tập tin (file system access) hay các giao thức về mạng (Internet

10

protocols), ... nhằm giảm thiểu gánh nặng lập trình cho các chuyên gia công nghệ

thông tin. Do đó, việc tìm hiểu .NET Framework giúp ta lập trình dễ dàng hơn vì hầu

như mọi công dụng đều đã được hỗ trợ.

.NET Framework: là phần cốt lõi của kiến trúc .NET hoạt động gắn chặt với hệ

điều hành. Nó cung cấp môi trường để thực thi các ứng dụng .NET. Framework tương

tự như mô hình máy ảo Java (Java Virtual Machine - JVM và Java Runtime

Environment - JRE). Các thành phần cơ bản của .NET Framework:

 Môi trường thực thi chung cho các mã chương trình .NET: CLR.

 Bộ biên dịch tức thời: Just in time IL compiler.

 Các thư viện chuẩn của hệ điều hành: Base Classes.

 Các giao diện đối tượng thành phần COM+.

Các thành phần chính của Microsoft.NET Framework.

Hình 4 Các thành phần chính của Microsoft.NET Framework NET application được chia ra làm hai loại: cho Internet gọi là ASP.NET, gồm có

Web Forms và Web Services; Và cho desktop gọi là Windows Forms.

2.3. HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU SQL SERVER

2.3.1. Giới thiệu

SQL Server là một hệ thống quản lý cơ sở dữ liệu quan hệ (Relational Database

Management System - RDBMS) sử dụng Transact-SQL để trao đổi dữ liệu giữa máy

khách (Client) và máy chủ SQL Server. Một RDBMS bao gồm databases, database

engine và các ứng dụng dùng để quản lý dữ liệu và các bộ phận khác nhau trong

RDBMS.

SQL Server được tối ưu để có thể chạy trên môi trường cơ sở dữ liệu rất lớn

11

(Very Large Database Environment) lên đến Tera-Byte và có thể phục vụ cùng lúc cho

hàng ngàn kết nối đến cơ sở dữ liệu, đến các server khác như Microsoft Internet

Information Server (IIS), E-Commerce Server, Proxy Server....

2.3.2. Các thành phần quan trọng trong SQL Server

SQL Server được cấu tạo bởi nhiều thành phần như Relational Database Engine,

Analysis Service và English Query.. Các thành phần này khi phối hợp với nhau tạo

thành một giải pháp hoàn chỉnh giúp cho việc lưu trữ và phân tích dữ liệu một cách dễ

dàng.

2.3.2.1. Relational Database Engine - Lõi của SQL Server:

Ðây là một engine có khả năng chứa data ở các quy mô khác nhau dưới dạng

table và hỗ trợ tất cả các kiểu kết nối (data connection) thông dụng của Microsoft như

ActiveX Data Objects (ADO), OLE DB, and Open Database Connectivity (ODBC).

Ngoài ra nó còn có khả năng tự điều chỉnh (tune up).

2.3.2.2. Replication - Cơ chế tạo bản sao (Replica)

Giả sử bạn có một database dùng để chứa dữ liệu được các ứng dụng thường

xuyên cập nhật, và copy sang server khác để chạy báo cáo (report database - cách làm

này thường dùng để tránh ảnh hưởng đến quá trình làm việc của server chính). Vấn đề

là report server của bạn cũng cần phải được cập nhật thường xuyên để đảm bảo tính

chính xác của các báo cáo. Cơ chế replication của SQL Server sẽ được sử dụng để bảo

đảm cho dữ liệu ở 2 database được đồng bộ (synchronized).

2.3.2.3. Data Transformation Service (DTS)-Dịch vụ chuyển dịch dữ liệu

Trong các công ty lớn trong đó data được chứa trong nhiều nơi khác nhau và ở

các dạng khác nhau cụ thể như chứa trong Oracle, DB2 (của IBM), SQL Server,

Microsoft Access.... Chắc chắn rằng trong suốt quá trình vận hành hệ thống, sẽ có nhu

cầu di chuyển dữ liệu giữa các server này (migrate hay transfer) và không chỉ di

chuyển mà chúng ta còn muốn định dạng (format) nó trước khi lưu vào database khác,

khi đó bạn sẽ thấy DTS giúp chúng ta giải quyết công việc trên một cách dễ dàng.

2.3.2.4. Analysis Service - Dịch vụ phân tích dữ liệu

Dữ liệu chứa trong database sẽ chẳng có ý nghĩa gì nhiều nếu như chúng ta

không thể lấy được những thông tin (information) bổ ích từ đó. Do đó Microsoft cung

cấp công cụ rất mạnh giúp cho việc phân tích dữ liệu trở nên dễ dàng và hiệu quả bằng

cách dùng khái niệm hình khối nhiều chiều (multi-dimension cubes) và kỹ thuật "đào

mỏ dữ liệu" (data mining).

12

2.3.2.5. Meta Data Servic

Meta data là những thông tin mô tả về cấu trúc của dữ liệu trong database như dữ

liệu thuộc loại nào String hay Integer..., Dịch vụ này giúp cho việc lưu trữ, định dạng,

điều chỉnh thông tin dữ liệu dễ dàng hơn.

2.4. DỊCH VỤ WEB (SERVICE IIS - Internet Information Service)

2.4.1. Giới thiệu IIS

Microsoft Internet Information Services là dịch vụ dành cho máy chủ chạy trên

nền Hệ điều hành Windows nhằm cung cấp và chuyển tải các thông tin lên mạng, nó

bao gồm nhiều dịch vụ khác nhau như Web Server, FTP Server,... dịch vụ này hoạt

động trong môi trường Internet/Intranet thông qua giao thức chuyển tải siêu văn bản -

Hypertext Transport Protocol (HTTP).

2.4.2. Nhiệm vụ của IIS

Nhiệm vụ của IIS là tiếp nhận yêu cầu của máy trạm và đáp ứng lại yêu cầu đó

bằng cách gửi về máy trạm những thông tin mà máy trạm yêu cầu:

- Hỗ trợ upload một website lên mạng Internet.

- Tạo các giao dịch thương mại điện tử trên Internet (hiện các catalog và nhận

được các đơn đặt hàng từ nguời tiêu dùng).

- Chia sẻ tập tin dữ liệu thông qua giao thức FTP.

- Cho phép người ở xa có thể truy xuất database của bạn (gọi là Database

remote access).

2.4.3. Cơ chế hoạt động của IIS

IIS sử dụng các giao thức mạng phổ biến là HTTP (Hyper Text Transfer

Protocol) và FPT (File Transfer Protocol) và một số giao thức khác như SMTP,

POP3,... để tiếp nhận yêu cầu và truyền tải thông tin trên mạng với các định dạng khác

nhau. Một trong những dịch vụ phổ biến nhất của IIS mà chúng ta quan tâm là dịch vụ

www (World Wide Web), nói tắt là dịch vụ Web.

Dịch vụ Web sử dụng giao thức HTTP để tiếp nhận yêu cầu (Requests) của trình

duyệt Web (Web browser) dưới dạng một địa chỉ URL (Uniform Resource Locator)

của một trang Web và IIS phản hồi lại các yêu cầu bằng cách gửi về cho Web browser

13

nội dung của trang Web tương ứng.

2.5. NGÔN NGỮ LẬP TRÌNH VISUAL BASIC.NET

2.5.1. Sơ lược về Visual Basic.NET

Visual Basic.NET (VB.NET) là ngôn ngữ lập trình hướng đối tượng (Object

Oriented Programming Language) do Microsoft thiết kế lại từ con số không. Visual

Basic.NET (VB.NET) không kế thừa VB6 hay bổ sung, phát triển từ VB6 mà là một

ngôn ngữ lập trình hoàn toàn mới trên nền Microsoft ’s .NET Framework. Do đó, nó

cũng không phải là VB phiên bản 7, đây là ngôn ngữ lập trình mới và rất lợi hại,

không những lập nền tảng vững chắc theo kiểu mẫu đối tượng như các ngôn ngữ lập

trình hùng mạnh khác đã vang danh C++, Java mà còn dễ học, dễ phát triển và còn tạo

mọi cơ hội hoàn hảo để giúp ta giải đáp những vấn đề khúc mắc khi lập trình. Hơn

nữa, dù không khó khăn gì khi cần tham khảo, học hỏi hay đào sâu những gì xảy ra

bên trong … hậu trường OS, Visual Basic.NET (VB.NET) giúp ta đối phó với các

phức tạp khi lập trình trên nền Windows và do đó, ta chỉ tập trung công sức vào các

vấn đề liên quan đến dự án, công việc hay doanh nghiệp.

2.5.2. Đặc tính của VB.NET

2.5.2.1. Tính kế thừa

– Kế thừa là khả năng mà 01 lớp con được dẫn xuất có thể dẫn xuất các đặc tính

được trích ra từ 1 lớp cha khác có sẵn.

– Lớp con có thể override – tức là viết lại 1 phương thức nào đó từ lớp cha để

thực hiện thêm 1 số chức năng khác (2 phương thức có cùng tên).

Trong VB. NET, để khai báo 1 lớp kế thừa từ lớp khác, ta sử dụng từ khóa là “

Inherits”. Trong đó Subclass là class con của class Parent.

Mặc định tất cả các lớp được tạo ra trong VB. NET thì đều có thể được dẫn xuất.

2.5.2.2. Bộ khởi tạo và bộ đóng

– Bộ khởi tạo: là một phương thức đặc biệt mà được triệu gọi khi có 1 thể hiện

mới của 1 lớp được tạo ra, bộ khởi tạo dùng để tạo mới đối tượng của một lớp.

– Bộ đóng: là phương thức ngược lại với bộ khởi tạo, được triệu gọi khi 1 đối

14

tượng của 1 lớp được xóa bỏ khỏi bộ nhớ.

2.5.2.3. Overloading

Overloading là sự cho phép nhiều phương thức trong một lớp có cùng tên nhưng

khác tham số, nghĩa là ta có thể tạo một phương thức nhưng có nhiều công dụng khác

nhau, thực hiện nhiệm vụ khác nhau, nhưng bắt buộc các phương thức này phải khác

tham số được truyền vào. Ví dụ sau sẽ cho thấy rõ hơn về Overloading trong vb.net.

Trong ví dụ trên, hàm Overload ở đây là hàm Fn1, các tham số truyền vào giữa 2

hàm là khác nhau và thực hiện những nhiệm vụ khác nhau

2.5.2.4. Overriding

Overriding là sự cho phép 1 lớp con có thể viết lại các thuộc tính, phương thức

của lớp cha mà nó kế thừa với cùng tên phương thức đó. Như vậy mặc dù được kế

thừa từ lớp cha nhưng lớp con hoàn toàn có thể phát triển theo hướng của riêng nó chứ

không phụ thuộc hoàn toàn vào lớp cha đã được định nghĩa. Có một điều cần chú ý là

một phương thức chỉ có thể được Override khi nó được khai báo với từ khóa là

Overridable trong lớp cha của nó.

Với khai báo Overridable, phương thức Fn() có thể được Override ở lớp con của

lớp này.

2.5.2.5. Xử lý ngoại lệ

Ngoại lệ (exception) là các lỗi mà có thể được sinh ra khi chương trình đang

chạy. Lỗi này xảy ra thường khó phát hiện vì nó không xảy ra do lỗi cú pháp, mà do sự

sai lệch về mặt ý nghĩa của chương trình. Để chương trình có khả năng xử lý được các

lỗi loại này, VB .NET hỗ trợ cấu trúc xử lý các ngoại lệ mà trong đó chủ yếu là xử lý

các đoạn code có khả năng xảy ra lỗi.

Tuy nhiên trong quá trình debug, nếu bạn xử lý exception nhiều khi lại có thể gây

khó khăn cho bạn để tìm ra lỗi (vì lỗi được bắt và bắn ra exception rồi), nên nếu bạn

chưa biết rõ ràng được lỗi ở đâu thì có lẽ bạn nên giải quyết xong lỗi với đoạn code đó

của mình, exception chỉ trợ giúp cho bạn hiển thị thông báo, nhảy sang một hàm xử lý

15

khác khi gặp lỗi mà lỗi này không phải do code gây nên.

Exception thường được bắt (catch) thông qua cú pháp try…catch của vb.net

2.5.2.6. Đa luồng

Với những ứng dụng đơn giản thì có thể phát triển theo cách của riêng bạn sẽ là

hợp lý nhất và tối ưu nhất, tuy nhiên với những ứng dụng phức tạp thì VB.NET cũng

hỗ trợ cho bạn xử lý theo các luồng khác nhau nhằm tận dụng tối đa hiệu năng của các

loại cpu đa nhân.

2.6. GIỚI THIỆU NGÔN NGỮ UML (Unifield Modeling Language)

2.6.1. Định nghĩa UML

UML là một ngôn ngữ mô hình hóa thống nhất để biểu diễn mô hình theo hướng

đối tượng sử dụng để thiết kế các hệ thống thông tin một cách nhanh chóng.

2.6.2. Các thành phần cơ bản của ngôn ngữ UML:

Hướng nhìn (view): Hướng nhìn chỉ ra những khía cạnh khác nhau của hệ thống

cần phải được mô hình hóa. Một hướng nhìn không phải là một bản vẽ, mà là một sự

trừu tượng hóa bao gồm một loạt các biểu đồ khác nhau. Chỉ qua việc định nghĩa của

một loạt các hướng nhìn khác nhau, mỗi hướng nhìn chỉ ra một khía cạnh riêng biệt

của hệ thống, người ta mới có thể tạo dựng nên một bức tranh hoàn thiện về hệ thống.

Cũng chính các hướng nhìn này nối kết ngôn ngữ mô hình hóa với quy trình được

chọn cho giai đoạn phát triển.

Biểu đồ (diagram): Biểu đồ là các hình vẽ miêu tả nội dung trong một hướng

nhìn. UML có tất cả 9 loại biểu đồ khác nhau được sử dụng trong những sự kết hợp

khác nhau để cung cấp tất cả các hướng nhìn của một hệ thống.

Phần tử mô hình hóa (model element): Các khái niệm được sử dụng trong các

biểu đồ được gọi là các phần tử mô hình, thể hiện các khái niệm hướng đối tượng

quen thuộc. Ví dụ như lớp, đối tượng, thông điệp cũng như các quan hệ giữa các khái

niệm này, bao gồm cả liên kết, phụ thuộc, khái quát hóa. Một phần tử mô hình thường

được sử dụng trong nhiều biểu đồ khác nhau, nhưng nó luôn luôn có chỉ một ý nghĩa

16

và một kí hiệu.

Cơ chế chung: Cơ chế chung cung cấp thêm những lời nhận xét bổ sung, các

thông tin cũng như các quy tắc ngữ pháp chung về một phần tử mô hình; chúng còn

cung cấp thêm các cơ chế để có thể mở rộng ngôn ngữ UML cho phù hợp với một

phương pháp xác định (một quy trình, một tổ chức hoặc một người dùng).

2.6.2. UML và các giai đoạn phát triển hệ thống

UML đưa ra khái niệm Use Case để nắm bắt các yêu cầu của khách hàng (người

sử dụng). UML sử dụng biểu đồ Use case (Use Case Diagram) để nêu bật mối quan hệ

cũng như sự giao tiếp với hệ thống.

Qua phương pháp mô hình hóa Use case, các tác nhân (Actor) bên ngoài quan

tâm đến hệ thống sẽ được mô hình hóa song song với chức năng mà họ đòi hỏi từ phía

hệ thống (tức là Use case). Các tác nhân và các Use case được mô hình hóa cùng các

mối quan hệ và được miêu tả trong biểu đồ Use case của UML. Mỗi một Use case

được mô tả trong tài liệu, và nó sẽ đặc tả các yêu cầu của khách hàng:

2.6.2.1. Giai đoạn phân tích (Analysis):

Giai đoạn phân tích quan tâm đến quá trình trừu tượng hóa đầu tiên (các lớp và

các đối tượng) cũng như cơ chế hiện hữu trong phạm vi vấn đề. Sau khi nhà phân tích

đã nhận biết được các lớp thành phần của mô hình cũng như mối quan hệ giữa chúng

với nhau, các lớp cùng các mối quan hệ đó sẽ được miêu tả bằng công cụ biểu đồ lớp

(class diagram) của UML. Sự cộng tác giữa các lớp nhằm thực hiện các Use case cũng

sẽ được miêu tả nhờ vào các mô hình động (dynamic models) của UML. D

2.6.2.2 Giai đoạn thiết kế (Design):

Trong giai đoạn này, kết quả của giai đoạn phân tích sẽ được mở rộng thành một

giải pháp kỹ thuật. Các lớp mới sẽ được bổ sung để tạo thành một hạ tầng cơ sở kỹ

thuật: Giao diện người dùng, các chức năng để lưu trữ các đối tượng trong ngân hàng

dữ liệu, giao tiếp với các hệ thống khác, giao diện với các thiết bị ngoại vi và các thiết

bị khác trong hệ thống, .... Các lớp thuộc phạm vi vấn đề có từ giai đoạn phân tích sẽ

được "nhúng" vào hạ tầng cơ sở kỹ thuật này, tạo ra khả năng thay đổi trong cả hai

phương diện: Phạm vi vấn đề và hạ tầng cơ sở. Giai đoạn thiết kế sẽ đưa ra kết quả là

bản đặc tả chi tiết cho giai đoạn xây dựng hệ thống.

2.6.2.3. Giai đoạn xây dựng (Development):

Trong giai đoạn xây dựng (giai đoạn lập trình), các lớp của giai đoạn thiết kế sẽ

được biến thành những dòng code cụ thể trong một ngôn ngữ lập trình hướng đối

17

tượng cụ thể (không nên dùng một ngôn ngữ lập trình hướng chức năng!). Phụ thuộc

vào khả năng của ngôn ngữ được sử dụng, đây có thể là một công việc khó khăn hay

dễ dàng. Khi tạo ra các mô hình phân tích và thiết kế trong UML, tốt nhất nên cố gắng

né tránh việc ngay lập tức biến đổi các mô hình này thành các dòng code. Trong

những giai đoạn trước, mô hình được sử dụng để dễ hiểu, dễ giao tiếp và tạo nên cấu

trúc của hệ thống; vì vậy, vội vàng đưa ra những kết luận về việc viết code có thể sẽ

thành một trở ngại cho việc tạo ra các mô hình chính xác và đơn giản. Giai đoạn xây

dựng là một giai đoạn riêng biệt, nơi các mô hình được chuyển thành code.

2.6.2.4. Thử nghiệm (Testing):

Trong chu trình phát triển phần mềm, một hệ thống phần mềm thường được thử

nghiệm qua nhiều giai đoạn và với nhiều nhóm thử nghiệm khác nhau. Các nhóm sử

dụng nhiều loại biểu đồ UML khác nhau làm nền tảng cho công việc của mình: Thử

nghiệm đơn vị sử dụng biểu đồ lớp (class diagram) và đặc tả lớp, thử nghiệm tích hợp

thường sử dụng biểu đồ thành phần (component diagram) và biểu đồ cộng tác

(collaboration diagram), và giai đoạn thử nghiệm hệ thống sử dụng biểu đồ Use case

(use case diagram) để đảm bảo hệ thống có phương thức hoạt động đúng như đã được

18

định nghĩa từ ban đầu trong các biểu đồ này.

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

3.1. PHÂN TÍCH NGHIỆP VỤ

3.1.1. Mô hình hệ thống ứng dụng

Hình 5 Mô hình ứng dụng

Trong mô hình này, các ứng dụng quản lý khoa và sổ tay giảng viên đã được thực

hiện trong các đề tài [2] và [3]. Do đó, đề tài tập trung phân tích và thiết kế hệ thống

website tương tác trên cơ sở dữ liệu có sẵn, có bổ sung thêm các hệ thống dữ liệu riêng

cho website.

Quá trình phân tích thiết kế hệ thống để thực hiện đề tài được tiến hành theo qui

trình chuẩn [4], đồng thời tham chiếu kết quả đã thực hiện bởi tác giả trước đó trong

sản phẩm phần mềm “Quản lý đào tạo theo hệ tín chỉ” dành cho các bộ phận quản lý

trong trường đại học [3]. Kết quả nghiên cứu, phân tích được trình bày dưới dạng các

biểu đồ mô tả tổ chức hệ thống, các chức năng, hệ thống cơ sở dữ liệu.

3.1.2. Các mô hình Use case

Các biểu đồ Use Case mô tả các tác nhân và chức năng liên quan trong hệ thống

một cách tổng quát trình bày trên hình 1. Các biểu đồ phân rã chi tiết cho từng đối

19

tượng sử dụng trong hệ thống được mô tả trên các hình 2, 3, 4.

Hệ thống có 2 loại chức năng:

- Chức năng quảng bá: giới thiệu chung về khoa và các hoạt động;

- Chức năng quản lý – điều hành: dành cho các đối tượng sử dụng trong hệ thống

để theo dõi và thực hiện các hoạt động nghiệp vụ chuyên môn; Để thực hiện các hoạt

động này, mỗi đối tượng phải đăng nhập vào hệ thống bằng tài khoản và mật khẩu của

mình.

20

Hình 6 Use Case hệ thống

Hình 7 Use Case sinh viên

21

Hình 8 Use Case cán bộ - giảng viên

Hình 9 Use Case quản trị

3.1.3. Biểu đồ lớp

Biểu đồ lớp tổng quát trình bày trên hình 10. Trên biểu đồ này chỉ giới thiệu tên

các lớp dữ liệu chính:

- Bộ phận tổ chức: cơ cấu tổ chức khoa, các bộ môn, phòng thực hành.

- Giảng viên: danh sách các cán bộ giảng viên cơ hữu và sinh hoạt chuyên môn tại

các bộ môn thuộc khoa.

- Sinh viên: danh sách các sinh viên đã và đang học tập các ngành thuộc khoa.

- Lớp sinh hoạt: danh sách các lớp sinh hoạt thuộc khoa.

- Chủ nhiệm lớp: danh sách phân công giảng viên chủ nhiệm – cố vấn học tập

từng học kỳ.

- Học kỳ: các thông tin về các học kỳ để theo dõi hoạt động, học tập, giảng dạy và

kết quả học tập rèn luyện.

- Tin tức: lưu trữ hệ thống thư viện học tập và giảng dạy, mẫu biểu, thông báo, tin

tức hoạt động của khoa.

- Lịch công tác: lịch công tác hàng tuần.

- Lớp học phần: danh sách lớp học phần và phân công giảng dạy; các theo dõi –

đánh giá.

22

- Học phần: danh mục các học phần do khoa giảng dạy.

- Chương trình đào tạo: khung chương trình đào tạo các ngành, chuyên ngành

thuộc khoa.

Hình 10 Biểu đồ lớp tổng quát

3.2. TRIỂN KHAI ỨNG DỤNG

Mô hình tổng quát trình bày trên hình 11. Thực tế triển khai căn cứ trên các yêu

cầu sau:

a. Tính an toàn, bảo mật và hiệu quả

Trong một hệ thống thông tin, tính an toàn được đặt lên hàng đầu vì chỉ có đảm

bảo được an toàn hệ thống thì dữ liệu mới có độ tin cậy. Vì vậy, hệ thống được thiết kế

gồm các thành phần:

- Ứng dụng quản lý dữ liệu: dành riêng cho các cá nhân có trách nhiệm trong

khoa, chủ yếu khai thác trên mạng nội bộ dùng để quản trị dữ liệu hệ thống và

cập nhật các dữ liệu gốc về giảng viên, sinh viên, chương trình đào tạo, kết quả

học tập của sinh viên…

- Ứng dụng sổ tay giảng viên: dành cho các giảng viên quản lý các lớp học phần,

các lớp chủ nhiệm. Do đặc điểm công việc và chất lượng mạng wifi của trường,

ứng dụng này được thiết kế để có thể vừa sử dụng on-line và off-line với khả

năng đồng bộ dữ liệu cục bộ với máy chủ dữ liệu.

- Website của khoa: hoạt động với tính chất quảng bá. Sau khi người dùng đăng

nhập vào hệ thống, tùy thuộc đó là giảng viên hay sinh viên, hệ thống sẽ cung

23

cấp các chức năng cần thiết tương ứng.

Đề đảm bảo an toàn, hệ thống không cho phép cập nhật dữ liệu lên máy chủ qua

kênh công cộng bằng website. Các tài liệu được để trên google drives của giảng viên

và cập nhật liên kết lên hệ thống.

Hệ thống tài khoản, mật khẩu và mọi thông tin truy xuất qua kênh công cộng

IIS_Server

SQL_Server

Truy cập Từ xa

Client

Client

Client

được mã hóa.

Hình 11 Mô hình triển khai ứng dụng

b. Khả năng bảo trì

Hệ thống thiết kế theo kiểu modules 3 tầng cho phép thuận tiện bảo trì và nâng

24

cấp.

CHƯƠNG IV: KẾT QUẢ NGHIÊN CỨU VÀ THỰC NGHIỆM

4.1. MÔ TẢ HỆ THỐNG

Hạ tầng kỹ thuật của khoa gồm một máy chủ dữ liệu sử dụng SQL Server 2014 và

một máy chủ cho website. Hệ thống máy chủ được truy xuất từ xa bằng công cụ của

MS Windows.

Website sử dụng 2 dịa chỉ:

- Cntt.cit.udn.vn: địa chỉ theo tên miền của Đại học Đà nẵng

- Itf.edu.vn: địa chỉ do khoa tự đăng ký, duy trì và quản trị. Trên thực tế, nhiều

công việc chỉ có thể thực hiện được nếu có quyền quản trị tên miền. Mặt khác,

khi giao dịch với các tổ chức công nghệ nước ngoài, tên miền “edu” thể hiện rõ

chức năng đào tạo. Tên miền này được tích hợp trên Google Apps với 2 sản

phẩm chủ yếu được sử dụng là Mail và ClassRoom.

- Đối với khách ghé thăm, website mang tính chất quảng bá giới thiệu về khoa với

các thông tin về cơ cấu tổ chức, hoạt động đào tạo, khoa học công nghệ, các hình ảnh

và hoạt động…

- Sinh viên, sau khi đăng nhập, sẽ truy cập được các tính năng chính như thời

khóa biểu, đăng ký đồ án, thực tập, xem kết quả học tập, tình hình chuyên cần học tập,

các thông báo của khoa và giảng viên, thư viện tài liệu học tập, thư viện mẫu biểu …

- Cán bộ giảng viên, sau khi đăng nhập, truy cập được các tính năng chính như

theo dõi thời khóa biểu, lịch trình giảng dạy, số liệu điểm danh các lớp học phần, lớp

chủ nhiệm, theo dõi đánh giá đồ án, cập nhật thư viện tài liệu giảng dạy, mẫu biểu, …

- Ban chủ nhiệm khoa, sau khi đăng nhập, truy cập được các số liệu thống kê,

nhật ký hoạt động của hệ thống

- Người quản trị, sau khi đăng nhập, có thể xác lập các thông số cấu hình hệ

thống, kiểm soát các hoạt động của giảng viên và sinh viên theo thời gian: đăng ký đồ

án, thực tập, nộp – duyệt đề cương, đồ án, …

25

4.2. MỘT SỐ GIAO DIỆN

Hình 12 Giao diện chính

26

Hình 13 Giao diện của giảng viên

27

Hình 14 Giao diện của sinh viên

4.3. KẾT LUẬN

Việc xây dựng và triển khai ứng dụng website điều hành cấp khoa mang lại hiệu

quả thiết thực cho hoạt động của khoa Công nghệ thông tin: tiết kiệm thời gian và

công sức xử lý thông tin, tăng hiệu quả và tính cập nhật cho hoạt động điều hành, hỗ

trợ ra quyết định.

Khi triển khai hệ thống có 3 trở ngại chưa khắc phục được:

- Chất lượng wifi trong trường chưa tốt nên hạn chế khả năng sử dụng;

- Chưa tích hợp được hệ thống với số liệu của Phòng Đào tạo nên việc cập nhật

số liệu còn phải thực hiện thủ công qua các bản mềm Excel

- Các khoa chưa sử dụng đồng bộ nên hiệu quả còn hạn chế

Hệ thống cần được nâng cấp, tích hợp thêm các tính năng về quản lý tài sản, quản

lý và hỗ trợ xử lý văn bản, quản lý các hoạt động của liên chi để có thể bao phủ mọi

lĩnh vực quản lý của khoa, hướng đến hình thức hoạt động văn phòng “xanh” – không

giấy.

Đồng thời tác giả kiến nghị nhà trường hỗ trợ giải quyết các trở ngại trên để khai

28

thác hệ thống có hiệu quả.

TÀI LIỆU THAM KHẢO

[1] Qui chế đào tạo đại học và cao đẳng hệ chính quy theo hệ thống tín chỉ, Bộ

Giáo dục và Đào tạo, 15/08/2007

[2] Bài báo: thiết kế và triển khai phần mềm sổ tay giảng viên. Tác giả: Lê Minh

Thái. Tạp chí Khoa học Công nghệ ĐHĐN. Số: Số 12(85).2014, Quyển 2. Trang: 80.

Năm 2014.

[3] Đề tài khoa học “Nghiên cứu xây dựng hệ thống phần mềm máy tính hỗ trợ

đào tạo tín chỉ”, Mã số B2009-DN01-15, Nguyễn Thị Hải Hà – Lê Minh Thái, 2009

[4] Phân tích và thiết kế hệ thống thông tin, NXB Đại học Quốc gia TPHCM,

Nguyễn Văn Ba, 2002, 288 trang

[5] Microsoft SQL Server 2008 – Quản trị Cơ sở dữ liệu, tập 1-2, NXB Lao động

29

Xã hội, Phạm Hữu Khang, 2008, 404 trang

30