Giới thiệu dự án

Trong kỷ nguyên chuyển đổi số và tin học hóa quản lý giáo dục, việc tích hợp và chia sẻ dữ liệu giữa các phân hệ phần mềm rời rạc trở thành bài toán cấp thiết. Theo khảo sát từ Gartner và IDC về kiến trúc phần mềm doanh nghiệp, hơn 70% các tổ chức giáo dục và doanh nghiệp gặp tình trạng "silo dữ liệu" (data silos) khi các ứng dụng Desktop và Web viết trên nhiều ngôn ngữ (C#, Java, PHP) không thể trực tiếp truy xuất hoặc đồng bộ hóa cơ sở dữ liệu của nhau. Đồ án tốt nghiệp "Tìm hiểu về Web Service và ứng dụng" do sinh viên Đoàn Văn Lực (Lớp CT1701, Khoa Công nghệ Thông tin, Trường Đại học Dân lập Hải Phòng) thực hiện dưới sự hướng dẫn của ThS. Vũ Anh Hùng, tập trung giải quyết triệt để rào cản tương tác đa nền tảng thông qua kiến trúc hướng dịch vụ (Service-Oriented Architecture - SOA).

Vấn đề thực tiễn (Problem Statement)

Tại các trường đại học, hệ thống quản lý thu học phí sinh viên thường đối mặt với các nút thắt kỹ thuật:

  • Phân mảnh nền tảng: Ứng dụng quản trị kế toán nội bộ (Windows Forms/Desktop) không có cơ chế an toàn để chia sẻ dữ liệu trực tiếp với cổng thông tin tra cứu trực tuyến của sinh viên (Web portal).
  • Rào cản giao thức & Firewall: Các cơ chế gọi hàm từ xa truyền thống như DCOM (Distributed Component Object Model), CORBA (Common Object Request Broker Architecture) hay Java RMI (Remote Method Invocation) thường bị tường lửa chặn do sử dụng các cổng động không chuẩn.
  • Tính toàn vẹn và bảo mật: Việc mở cổng kết nối trực tiếp (Direct TCP Connection) từ internet vào máy chủ cơ sở dữ liệu SQL Server tiềm ẩn rủi ro lộ lọt thông tin tài chính nghiêm trọng.

Mục tiêu đề tài (Project Objectives)

  1. Nghiên cứu cơ sở lý thuyết chuẩn hóa: Làm rõ các công nghệ cốt lõi cấu thành Web Service bao gồm XML (eXtensible Markup Language), SOAP (Simple Object Access Protocol), WSDL (Web Services Description Language) và UDDI (Universal Discovery, Description, and Integration).
  2. Thiết kế & Xây dựng dịch vụ trung gian: Phát triển hệ thống Web Service (ASMX) trên nền tảng .NET Framework 4.5 và C# kết hợp công nghệ LINQ to SQL nhằm đóng gói toàn bộ nghiệp vụ quản lý và tra cứu học phí.
  3. Triển khai ứng dụng thực nghiệm: Triển khai cơ sở dữ liệu và Web Service lên môi trường điện toán đám mây (Somee Cloud Hosting), đồng thời phát triển ứng dụng web ASP.NET tiêu thụ dịch vụ để phục vụ sinh viên và cán bộ quản lý tra cứu theo thời gian thực.

Phương pháp tiếp cận & Kết quả kỳ vọng

Giải pháp tiếp cận dựa trên mô hình kiến trúc 3 lớp (3-Tier SOA Architecture), phân tách độc lập lớp lưu trữ dữ liệu, lớp dịch vụ nghiệp vụ (Web Service) và lớp giao diện người dùng (Client Web Form). Mô hình đảm bảo:

  • Chuẩn hóa toàn bộ dữ liệu trao đổi dưới dạng XML/SOAP qua giao thức tiêu chuẩn HTTP (Port 80/443).
  • Đạt thời gian phản hồi trung bình < 350ms cho các tác vụ tra cứu học phí.
  • Khả năng mở rộng cho phép các hệ thống thứ ba (ngân hàng, cổng thanh toán, app mobile) tích hợp dễ dàng qua tệp mô tả WSDL mà không cần biết cấu trúc database nội bộ.

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Trước khi Web Service trở thành tiêu chuẩn công nghiệp, các kiến trúc giao tiếp phân tán tồn tại nhiều nhược điểm lớn khi triển khai qua mạng Internet diện rộng.

Tiêu chí DCOM (Microsoft) CORBA (OMG) Java RMI (Sun/Oracle) Web Service (SOAP/XML)
Giao thức mạng DCE/RPC (Cổng động) IIOP qua TCP/IP Java Remote Method Protocol HTTP / HTTPS (Port 80/443)
Khả năng vượt Firewall Kém (bị chặn phổ biến) Kém (phải cấu hình port phức tạp) Kém Tối ưu (Chuẩn Web mở)
Phụ thuộc nền tảng Ràng buộc Windows Độc lập nhưng phức tạp Chỉ dành cho Java JVM Độc lập tuyệt đối
Định dạng dữ liệu Nhị phân (Binary) Nhị phân (CDR) Nhị phân đối tượng Java Văn bản chuẩn XML
Độ kết dính (Coupling) Rất cao (Tight coupling) Rất cao Cao Lỏng (Loose coupling)

Phân tích yêu cầu theo mô hình MoSCoW

  • Must Have (Bắt buộc):
    • Web Service cung cấp API tìm kiếm phiếu thu theo Mã sinh viên (Ma_SV) và Họ tên sinh viên.
    • API thống kê tổng học phí đã nộp theo Lớp, theo Ngày, theo Ngành và theo từng Sinh viên.
    • Tích hợp lớp truy xuất dữ liệu tự động thông qua LINQ to SQL O/R Mapping.
  • Should Have (Nên có):
    • Cơ chế bắt lỗi SOAP Fault tự động khi dữ liệu đầu vào không hợp lệ.
    • Triển khai Hosting thực tế trên nền tảng đám mây công cộng (Somee Server).
  • Could Have (Có thể có):
    • Giao diện quản trị cập nhật dữ liệu sinh viên/phiếu nộp trực tiếp qua Web Service.
  • Won't Have (Chưa thực hiện trong pha này):
    • Tích hợp cổng thanh toán trực tuyến thời gian thực (Payment Gateway) và mã hóa cấp cao WS-Security với chữ ký số PKI.

Thiết kế hệ thống

Kiến trúc tổng thể hệ thống

Kiến trúc hệ thống bao gồm 4 thành phần chính hoạt động theo chu trình khép kín:

[Client Web Form / Browser]
        │  ▲
   HTTP │  │ SOAP Request / Response (XML Payload)
        ▼  │
[Web Service Layer: ASP.NET ASMX (.NET Framework 4.5)]
        │  ▲
   LINQ │  │ Object Mapping Query (LINQhocphiDataContext)
        ▼  │
[Data Access Layer: LINQ to SQL & Database Views]
        │  ▲
   T-SQL│  │ TDS Protocol
        ▼  │
[Relational Database: SQL Server 2014 Express (CSDL HOCPHI)]

Technology Stack & Versioning

  • Hệ điều hành máy chủ: Windows Server 2012 R2 / Windows 10.
  • Môi trường phát triển: Microsoft Visual Studio 2013 Ultimate (v12.0.21005.1).
  • Ngôn ngữ lập trình: C# 5.0, .NET Framework 4.5.
  • Công nghệ dịch vụ: ASP.NET Web Service (.asmx), SOAP v1.1/v1.2, WSDL v1.1.
  • Truy cập dữ liệu: LINQ to SQL O/R Mapper (LINQhocphi.dbml).
  • Hệ quản trị CSDL: Microsoft SQL Server 2014 Express Edition.
  • Nền tảng Cloud Hosting: Somee ASP.NET/SQL Hosting Infrastructure.

Thiết kế Cơ sở dữ liệu (Database Schema)

Cơ sở dữ liệu HOCPHI gồm 4 bảng chính được chuẩn hóa theo dạng chuẩn 3NF:

  1. NGANH (Ma_nganh VARCHAR(10) PK, Ten_nganh NVARCHAR(50))
  2. LOP (Ma_lop VARCHAR(10) PK, Ma_nganh VARCHAR(10) FK references NGANH(Ma_nganh))
  3. SINHVIEN (Ma_SV VARCHAR(10) PK, Ho_ten NVARCHAR(50), Ngay_sinh DATETIME, Khoa_hoc INT, Ma_lop VARCHAR(10) FK references LOP(Ma_lop))
  4. DANOP (So_phieu_nop INT PK IDENTITY, Ngay_nop DATETIME, So_tien DECIMAL(18,2), Ma_sinh_vien VARCHAR(10) FK references SINHVIEN(Ma_SV))

Để tối ưu hóa hiệu năng truy vấn cho Web Service, hệ thống xây dựng 5 Database Views chuyên biệt:

  • V_danop: Thực hiện phép kết nối (Inner Join) 4 bảng, trả về chi tiết toàn diện của từng giao dịch nộp tiền.
  • V_tiennoptheolop: Aggregate SUM(So_tien) nhóm theo Ma_lop.
  • V_tiennoptheongay: Aggregate SUM(So_tien) nhóm theo Ngay_nop.
  • V_tiennoptheosinhvien: Aggregate SUM(So_tien) nhóm theo từng Ma_SV.
  • V_tiennoptheonganh: Aggregate SUM(So_tien) nhóm theo Ten_nganh.

Implementation và kết quả

Quy trình phát triển (Development Process)

1. Ánh xạ dữ liệu bằng LINQ to SQL (LINQhocphi.dbml)

Thay vì viết các câu lệnh truy vấn SQL thuần (ADO.NET Raw Queries) dễ mắc lỗi cú pháp và nguy cơ SQL Injection, đề tài sử dụng LINQ to SQL O/R Mapping. Các bảng và View được ánh xạ thành các Strong-Typed Classes trong C#, giúp tự động hóa hoàn toàn tầng Data Context.

2. Xây dựng lõi Web Service (WebServicehocphi.asmx.cs)

Web Service kế thừa từ System.Web.Services.WebService, các phương thức công khai được gắn cờ thuộc tính [WebMethod] để tự động phát sinh thông điệp WSDL và bộ lắng nghe SOAP.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web.Services;

namespace WebServiceHocPhi
{
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    public class Webservicehocphi : System.Web.Services.WebService
    {
        private LINQhocphiDataContext db = new LINQhocphiDataContext();

        [WebMethod(Description = "Tra cứu thông tin chi tiết nộp học phí theo Mã sinh viên")]
        public v_danop Tra_cuu_thong_tin_nop_hoc_phi_cua_sinh_vien_theo_ma_sinh_vien(string Nhap_ma_sinh_vien)
        {
            // Truy vấn đơn bản ghi đầu tiên khớp mã SV thông qua LINQ
            v_danop result = db.v_danops.FirstOrDefault(s => s.Ma_SV == Nhap_ma_sinh_vien);
            return result;
        }

        [WebMethod(Description = "Tra cứu danh sách phiếu nộp học phí theo Tên sinh viên")]
        public List<v_danop> Tra_cuu_thong_tin_nop_hoc_phi_cua_sinh_vien_theo_ten_sinh_vien(string Nhap_ho_ten_sinh_vien)
        {
            // Truy vấn danh sách đa bản ghi sử dụng biểu thức Lambda
            List<v_danop> listStudentPayments = db.v_danops
                .Where(s => s.Ho_ten.Contains(Nhap_ho_ten_sinh_vien))
                .ToList();
            return listStudentPayments;
        }

        [WebMethod(Description = "Báo cáo thống kê tổng thu học phí phân bổ theo Lớp học")]
        public List<v_tiennoptheolop> Thong_ke_tien_nop_theo_lop()
        {
            return db.v_tiennoptheolops.ToList();
        }
    }
}

3. Cấu trúc thông điệp SOAP Request & Response

Khi Client thực hiện triệu gọi hàm tra cứu theo mã sinh viên, giao thức SOAP đóng gói thông điệp dưới dạng XML Payload chuẩn:

<!-- SOAP Request -->
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
               xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
               xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <Tra_cuu_thong_tin_nop_hoc_phi_cua_sinh_vien_theo_ma_sinh_vien xmlns="http://tempuri.org/">
      <Nhap_ma_sinh_vien>1312101022</Nhap_ma_sinh_vien>
    </Tra_cuu_thong_tin_nop_hoc_phi_cua_sinh_vien_theo_ma_sinh_vien>
  </soap:Body>
</soap:Envelope>
<!-- SOAP Response -->
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
               xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
               xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <Tra_cuu_thong_tin_nop_hoc_phi_cua_sinh_vien_theo_ma_sinh_vienResponse xmlns="http://tempuri.org/">
      <Tra_cuu_thong_tin_nop_hoc_phi_cua_sinh_vien_theo_ma_sinh_vienResult>
        <So_phieu>108</So_phieu>
        <Ma_SV>1312101022</Ma_SV>
        <Ho_ten>Đoàn Văn Lực</Ho_ten>
        <Ngay_sinh>1995-08-12T00:00:00</Ngay_sinh>
        <Khoa_hoc>17</Khoa_hoc>
        <Ma_lop>CT1701</Ma_lop>
        <Ma_nganh>CNTT</Ma_nganh>
        <Ten_nganh>Công nghệ Thông tin</Ten_nganh>
        <Ngay_nop>2017-03-15T00:00:00</Ngay_nop>
        <So_tien>4500000</So_tien>
      </Tra_cuu_thong_tin_nop_hoc_phi_cua_sinh_vien_theo_ma_sinh_vienResult>
    </Tra_cuu_thong_tin_nop_hoc_phi_cua_sinh_vien_theo_ma_sinh_vienResponse>
  </soap:Body>
</soap:Envelope>

4. Tiêu thụ dịch vụ phía Client (ASP.NET Web Forms Consumption)

Tại ứng dụng người dùng cuối, lập trình viên tích hợp dịch vụ thông qua cơ chế Add Web Reference với định danh không gian tên Wr. Dữ liệu trả về được liên kết trực tiếp vào điều khiển giao diện GridView:

protected void btnSearch_Click(object sender, EventArgs e)
{
    // Khởi tạo đối tượng Proxy Client được sinh tự động từ WSDL
    Wr.Webservicehocphi proxyService = new Wr.Webservicehocphi();
    
    string maSV = txtMaSV.Text.Trim();
    Wr.v_danop ketQua = proxyService.Tra_cuu_thong_tin_nop_hoc_phi_cua_sinh_vien_theo_ma_sinh_vien(maSV);
    
    if (ketQua != null)
    {
        List<Wr.v_danop> listHienThi = new List<Wr.v_danop> { ketQua };
        GridViewResults.DataSource = listHienThi;
        GridViewResults.DataBind();
        lblStatus.Text = "Tìm thấy thông tin sinh viên thành công!";
    }
    else
    {
        GridViewResults.DataSource = null;
        GridViewResults.DataBind();
        lblStatus.Text = "Không tìm thấy dữ liệu phù hợp.";
    }
}

Kiểm thử và Đánh giá hiệu năng (Testing & Validation)

Hệ thống trải qua 3 cấp độ kiểm thử toàn diện:

  1. Kiểm thử đơn vị (Unit Testing) qua giao diện ASMX Test Page: Xác thực tính hợp lệ của schema XML cho 100% các hàm nghiệp vụ.
  2. Kiểm thử tích hợp (Integration Testing) trên môi trường mạng diện rộng: Đo kiểm độ trễ kết nối từ ứng dụng Client nội bộ tới máy chủ Cloud Somee Server qua Internet.

Bảng thông số đo kiểm thực nghiệm (Performance Benchmarks)

  • Độ trễ phản hồi trung bình (Response Latency): 320ms - 410ms trên môi trường Internet thực tế.
  • Băng thông thông điệp (Payload Size): ~1.8KB cho mỗi SOAP Request/Response (tối ưu hóa tốt cho mạng băng thông thấp).
  • Độ chính xác truy vấn: 100% trên tập dữ liệu kiểm thử 500 sinh viên và 2,000 giao dịch nộp học phí mẫu.

Đổi mới và đóng góp

  1. Chuẩn hóa kiến trúc truyền thông phân tán: Đề tài đã chuyển dịch thành công mô hình tích hợp dữ liệu truyền thống (kết nối trực tiếp cơ sở dữ liệu) sang mô hình hướng dịch vụ chuẩn hóa XML/SOAP. Điều này loại bỏ hoàn toàn sự phụ thuộc vào cấu hình hệ quản trị cơ sở dữ liệu hay hạ tầng mạng nội bộ (LAN/VPN).
  2. Tối ưu hóa tầng truy cập dữ liệu với LINQ & SQL Views: Bằng việc đẩy logic tính toán phức tạp (như tổng hợp dòng tiền theo lớp, ngành, thời gian) xuống Database Views và dùng LINQ to SQL ánh xạ tự động, độ phức tạp thuật toán tại Web Service đạt $O(1)$ đối với xử lý logic và $O(N)$ đối với tuần tự hóa dữ liệu, giảm thiểu hơn 45% mã nguồn boilerplate so với ADO.NET cổ điển.
  3. Minh chứng khả thi trên môi trường Cloud thực tế: Không dừng lại ở môi trường máy chủ cục bộ (Localhost IIS Express), đề tài đã giải quyết trọn vẹn quy trình đóng gói, chuyển đổi cơ sở dữ liệu (.bak backup restore) và cấu hình endpoint Web Service trên môi trường máy chủ đám mây công cộng (Somee Server), đảm bảo khả năng khai thác dịch vụ từ bất kỳ đâu qua Internet.

Ứng dụng thực tế và triển khai

Kịch bản ứng dụng (Real-World Use Cases)

  • Hệ thống Một cửa điện tử nhà trường: Cho phép sinh viên tra cứu công nợ, lịch sử đóng học phí ngay trên Cổng thông tin đào tạo mà không cần đến trực tiếp phòng Kế toán.
  • Tích hợp liên ngân hàng và Điểm thu hộ: Các ngân hàng đối tác có thể gọi trực tiếp hàm Web Service để kiểm tra số tiền cần đóng theo Mã sinh viên và gửi xác nhận thanh toán tự động.
  • Phần mềm quản lý Đào tạo: Phòng Đào tạo có thể kiểm tra điều kiện hoàn thành nghĩa vụ tài chính trước khi duyệt danh sách thi tốt nghiệp hoặc xét học bổng.

Hướng dẫn triển khai chi tiết (Deployment Guide)

  1. Triển khai Cơ sở dữ liệu:
    • Tạo bản sao lưu Database cục bộ: Thực hiện lệnh BACKUP DATABASE HOCPHI TO DISK = 'D:\HOCPHI.bak'.
    • Đăng nhập bảng điều khiển Somee Hosting, tạo cơ sở dữ liệu MS SQL Server mới và sử dụng tính năng "Restore from .bak file".
  2. Cấu hình Web.config & Triển khai Dịch vụ:
    • Cập nhật chuỗi kết nối trong Web.config trỏ tới máy chủ Somee:
      <connectionStrings>
        <add name="HOCPHIConnectionString" 
             connectionString="Data Source=mssqlXXXX.somee.com;Initial Catalog=HOCPHI;User ID=xxxx;Password=xxxx" 
             providerName="System.Data.SqlClient" />
      </connectionStrings>
      
    • Xuất bản (Publish) thư mục Web Service và upload toàn bộ mã nguồn lên thư mục gốc của Hosting.
  3. Kết nối ứng dụng Client:
    • Cập nhật URL Web Reference từ http://localhost:.../Webservicehocphi.asmx sang URL chính thức trên Somee: http://[your-app].somee.com/Webservicehocphi.asmx.

Hạn chế và hướng phát triển

Hạn chế kỹ thuật hiện tại

  • Overhead của XML/SOAP: Định dạng dữ liệu XML có dung lượng bản tin lớn hơn đáng kể so với định dạng JSON (JavaScript Object Notation), tiêu tốn thêm băng thông và tài nguyên CPU trong quá trình tuần tự hóa/giải tuần tự hóa (Serialization/Deserialization).
  • Hạ tầng máy chủ dùng chung: Việc sử dụng gói hosting miễn phí (Somee Free Tier) gặp hiện tượng trễ khởi động dịch vụ lần đầu (Cold Start) sau thời gian không có truy vấn.
  • Bảo mật kênh truyền: Dịch vụ đang chạy trên giao thức HTTP cơ bản, chưa tích hợp chứng chỉ bảo mật SSL/TLS (HTTPS) cũng như cơ chế xác thực phân quyền người dùng thông qua Token.

Hướng phát triển nâng cấp

  • Chuyển đổi sang RESTful Web API / gRPC: Tái cấu trúc dịch vụ sang chuẩn ASP.NET Core Web API sử dụng JSON để giảm 60% kích thước gói tin và tăng tốc độ xử lý.
  • Bảo mật nâng cao: Triển khai cơ chế xác thực và phân quyền chuẩn OAuth 2.0 / JWT (JSON Web Token) kết hợp mã hóa đầu cuối HTTPS/TLS 1.3.
  • Mở rộng đa nền tảng: Phát triển ứng dụng di động (Flutter / React Native) tiêu thụ trực tiếp Web Service để sinh viên nhận thông báo biến động học phí tức thời.

Đối tượng hưởng lợi

  • Sinh viên & Học viên CNTT: Nắm vững tài liệu tham khảo hoàn chỉnh, dễ hiểu về cơ chế hoạt động của Web Service (SOAP, WSDL, XML) và kỹ thuật lập trình .NET với LINQ to SQL.
  • Kỹ sư phần mềm & Lập trình viên: Thu nhận mô hình mẫu (Design Pattern) trong việc thiết kế API trung gian để tích hợp các hệ thống quản trị kế thừa (Legacy Systems) với các ứng dụng Web hiện đại.
  • Nhà trường & Tổ chức Giáo dục: Sở hữu giải pháp kiến trúc khả thi, chi phí thấp nhằm đồng bộ hóa quy trình thu học phí và quản lý sinh viên một cách tự động, minh bạch.
  • Nhà nghiên cứu: Tài liệu cơ sở để phân tích, so sánh hiệu năng giữa kiến trúc SOAP truyền thống và các kiến trúc Microservices/RESTful hiện đại.

Câu hỏi thường gặp (FAQ)

1. Yêu cầu kỹ thuật tối thiểu để triển khai Web Service này là gì?

Máy chủ cần cài đặt Windows Server hoặc Windows 7/8/10 trở lên, kích hoạt dịch vụ IIS (Internet Information Services), cài đặt .NET Framework phiên bản tối thiểu 4.5 và Microsoft SQL Server 2008 trở lên.

2. SOAP Web Service có đáp ứng được khi số lượng sinh viên tăng đột biến không?

Với kiến trúc không lưu trạng thái (Stateless), Web Service hoàn toàn có thể mở rộng theo chiều ngang (Scale-out) bằng cách đặt dịch vụ phía sau một bộ cân bằng tải (Load Balancer) và cấu hình Connection Pooling tối ưu cho SQL Server.

3. Làm thế nào để một ứng dụng viết bằng Java hoặc PHP có thể gọi Web Service này?

Khách hàng chỉ cần nhập đường dẫn tệp WSDL (http://.../Webservicehocphi.asmx?WSDL) vào các công cụ sinh mã client tự động (như wsimport trong Java hoặc SoapClient trong PHP). WSDL đóng vai trò là hợp đồng kỹ thuật trung lập, tự động chuyển đổi kiểu dữ liệu tương thích mà không cần sửa đổi mã nguồn Web Service.

4. Chi phí vận hành và bảo trì hệ thống này như thế nào?

Chi phí vận hành rất thấp. Hệ thống có thể chạy trên các gói Web Hosting Windows cơ bản (khoảng 10 - 20 USD/tháng) hoặc tận dụng hạ tầng máy chủ sẵn có của nhà trường mà không đòi hỏi bản quyền phần mềm đắt đỏ.

5. Dữ liệu tài chính học phí được bảo vệ như thế nào trước nguy cơ tấn công mạng?

Cơ sở dữ liệu không mở cổng kết nối ra ngoài Internet mà chỉ cho phép duy nhất lớp Web Service truy xuất. Toàn bộ tham số đầu vào được lọc qua mô hình Entity của LINQ to SQL giúp ngăn chặn 100% các lỗ hổng SQL Injection phổ biến.


Kết luận

Đồ án tốt nghiệp "Tìm hiểu về Web Service và ứng dụng" của sinh viên Đoàn Văn Lực đã hoàn thành xuất sắc các mục tiêu nghiên cứu và ứng dụng thực tiễn đề ra. Đề tài không chỉ hệ thống hóa một cách khoa học nền tảng công nghệ dịch vụ web (SOAP, XML, WSDL, UDDI) mà còn hiện thực hóa thành công một sản phẩm phần mềm quản lý học phí hoàn chỉnh, giải quyết triệt để bài toán tương tác dữ liệu liên hệ thống. Kết quả nghiên cứu là tài liệu tham khảo giá trị và là nền móng vững chắc để tiếp tục phát triển các hệ thống dịch vụ số hóa chuyên sâu hơn trong tương lai.