Báo cáo 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

pdf 37 trang thiennha21 14/04/2022 3410
Bạn đang xem 20 trang mẫu của tài liệu "Báo cáo 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", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfbao_cao_nghien_cuu_xay_dung_va_trien_khai_he_thong_ung_dung.pdf

Nội dung text: Báo cáo 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

  1. ĐẠ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
  2. ĐẠ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
  3. 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.
  4. MỤC LỤC LỜI MỞ ĐẦU 1 CHƯƠNG 1. GIỚI THIỆU TỔNG QUAN 2 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 II: CƠ SỞ LÝ THUYẾT 6 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 III. PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 19 3.1. PHÂN TICH́ NGHIÊP̣ VU ̣ 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 IV: KẾT QUẢ NGHIÊN CỨU VÀ THỰC NGHIỆM 25 4.1. MÔ TẢ HỆ THỐNG 25 4.2. MỘT SỐ GIAO DIỆN 25 4.3. KẾT LUẬN 28 TÀI LIỆU THAM KHẢO 29
  5. 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
  6. ĐẠI HỌC ĐÀ NẴNG CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TRƯỜNG CĐ CÔNG NGHỆ THÔNG TIN Độc lập – Tự do – Hạnh phúc 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
  7. Đà Nẵng, ngày18 tháng 12 năm 2016 Cơ quan chủ trì Chủ nhiệm đề tài
  8. 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. Chương 4: Kết quả thực nghiệm ứng dụng. 1
  9. 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 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 2
  10. 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 hành chính văn bản. 3
  11. 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 - Tìm hiểu các hoạt động nghiệp vụ cấp khoa 4
  12. - 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 - Cài đặt và kiểm thử sản phẩm ứng dụng 5
  13. 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ỹ 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ý 6
  14. 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: - Thành phần xử lý ứng dụng (Application processing components) 7
  15. - 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. Hình 2 Kiến trúc Client/Server 2 tầng *Ưu điểm: 8
  16. Đả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. Hình 3 Mô hình kiến trúc Client/Server 3 tầng 9
  17. - 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 protocols), nhằm giảm thiểu gánh nặng lập trình cho các chuyên gia công nghệ 10
  18. 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 (Very Large Database Environment) lên đến Tera-Byte và có thể phục vụ cùng lúc cho 11
  19. 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). 2.3.2.5. Meta Data Servic 12
  20. 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 nội dung của trang Web tương ứng. 13
  21. 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 tượng của 1 lớp được xóa bỏ khỏi bộ nhớ. 14
  22. 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ý khác khi gặp lỗi mà lỗi này không phải do code gây nên. 15
  23. 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 và một kí hiệu. 16
  24. 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 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 17
  25. 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 định nghĩa từ ban đầu trong các biểu đồ này. 18
  26. 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 tượng sử dụng trong hệ thống được mô tả trên các hình 2, 3, 4. 19
  27. 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. Hình 6 Use Case hệ thống 20
  28. Hình 7 Use Case sinh viên Hình 8 Use Case cán bộ - giảng viên 21
  29. 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á. - Học phần: danh mục các học phần do khoa giảng dạy. 22
  30. - 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 cấp các chức năng cần thiết tương ứng. 23
  31. Đề đả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 được mã hóa. IIS_Server SQL_Server Truy cập Từ xa Client Client Client 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 cấp. 24
  32. 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, 4.2. MỘT SỐ GIAO DIỆN 25
  33. Hình 12 Giao diện chính Hình 13 Giao diện của giảng viên 26
  34. Hình 14 Giao diện của sinh viên 27
  35. 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 thác hệ thống có hiệu quả. 28
  36. 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 Xã hội, Phạm Hữu Khang, 2008, 404 trang 29