Phân tích thiết kế UML

Một phần của tài liệu Hệ thống quản lý dữ liệu phổ cập tiểu học dựa trên kiến trúc hướng dịch vụ (Trang 45)

3.3.1 Biểu đồ use case tổng quát

Bảng dưới đây sẽ mô tả các tác nhân như admin cấp trường, huyện, người dùng tác động vào hệ thống thông qua các tình huống:

Bùi Văn Quý CH CNTT 2013 46

STT Tác nhân chính Tên Use case

1 Admin cấp huyện

Đăng nhập: Đăng nhập để vào hệ thống với quyền là admin cấp huyện.

Quản lý admin cấp trường: Quản lý, cấp tài khoản cho các admin cấp trường do mình quản lý.

Quản lý và xem các thống kê báo cáo của các trường trong xã

2 Admin cấp trường

Đăng nhập: Đăng nhập vào hệ thống với quyền là admin cập trường.

Quản lý nhóm người dùng: Mỗi nhóm có một số chức năng mà admin cho phép sử dụng.

Quản lý người dùng: Quản lý và cấp tài khoản cho mỗi người dùng trong trường.

Thống kê theo các tiêu chuẩn, mẫu biểu của bộ giáo dục.

Quản lý và nhập liệu các số liệu, để thực hiện lưu trữ và xử lý tính toán thống kê.

Quản lý đội ngũ cán bộ đang làm việc trong trường cũng như cơ sở vật chất và kết quả thi tốt nghiệp.

3 Người dùng Đăng nhập: Đăng nhập vào hệ thống với quyền là người dùng do admin cấp trường cấp.

Thống kê báo cáo: Thống kê theo các tiêu chuẩn, mẫu biểu của bộ giáo dục, nếu tài khoản của người dùng thuộc nhóm mà có thể sử dụng được chức năng này. Nhập liệu: Quản lý và nhập liệu các số liệu, để thực hiện lưu trữ và xử lý tính toán thống kê, nếu tài khoản của người dùng thuộc nhóm mà có thể sử dụng được

Bùi Văn Quý CH CNTT 2013 47 chức năng này.

Quản lý đội ngũ cán bộ đang làm việc trong trường cũng như cơ sở vật chất và kết quả thi tốt nghiệp.

Bảng 3.3: Xác định các tình huống sử dụng (use case)

Mục đích sử dụng hệ thống “Xử lý dữ liệu phổ cập” nhằm mục đích giúp cho việc quản lý và thống kê các báo cáo theo các mẫu biểu tiểu chuẩn mà không phải tốn nhiều công sức, tiền bạc, thời gian.

Bùi Văn Quý CH CNTT 2013 48 - Tác nhân: Người dùng hệ thống như: admin cấp huyện, admin cấp trường, người dùng hệ thống.

- Mô tả: Hệ thống cho phép người dùng vào sử dụng các chức năng để thực hiện việc quản lý, nhập liệu cũng như thống kê các báo cáo, lấy số liệu.

Điều kiện cần: Người dùng phải được cấp một tài khoản và sau đó đăng nhập vào hệ thống mới thực hiện được các chức năng mong muốn.

Dòng sự kiện: Dòng sự kiện chính:

Hành động của tác nhân Phản ứng của hệ thống 1. Đăng nhập vào hệ thống.

3. Nhập thông tin đăng nhập.

4. Gửi thông tin đăng nhập tới hệ thống.

6. Sử dụng một chức năng.

8. Đưa ra các thông số đầu vào.

10. Hiển thị kết quả (adsbygoogle = window.adsbygoogle || []).push({});

2. Hiển thị trang đăng nhập.

5. Kiểm tra thông tin đăng nhập và loại tài khoản, nếu đúng thì cho phép truy cập hệ thống, sai thì đưa ra thông báo.

7. Hiển thị giao diện chức năng

9. Xử lý từ các dịch vụ và trả ra các kết quả tương ứng.

Bảng 3.4: Dòng sự kiện chính cho use case hệ thống

Dòng sự kiện phụ: Người dùng đăng nhập sai tài khoản sẽ không vào sử dụng được những chức năng này của hệ thống.

• Dòng sự kiện thứ nhất:

Hệ thống hiển thị thông báo không đăng nhập thành công khi tên đăng nhập và mật khẩu nhập vào không hợp lệ sau đó kết thúc use case.

• Dòng sự kiện thứ hai:

Hệ thống có lỗi trong quá trình xử lý xác nhận tài khoản sẽ hiển thị thông báo lỗi và kết thúc use case.

Bùi Văn Quý CH CNTT 2013 49 • Dòng sự kiện thứ ba:

Quản trị hoặc thành viên hủy yêu cầu đăng nhập. Hệ thống bỏ qua hộp thoại đăng nhập, hiển thị lại giao diện ban đầu và thông báo cho người dùng và kết thúc use case.

3.3.2. Biểu đồ lớp tổng quát

Dưới đây là biểu đồ lớp tổng quát cho hệ thống quản lý phổ cập giáo dục tiểu học, biểu đồ miêu tả các mối quan hệ giữa các lớp trong hệ thống ví dụ như quan hệ giữa trẻ và chủ hộ là quan hệ 1-nhiều (1-n) vì trong một chủ hộ có nhiều trẻ, mà trẻ chỉ nằm trong một gia đình, ngoài ra còn có các quan hệ khác như quan hệ 1-1, n-n. Biểu đồ lớp còn cho thấy các thuộc tính, sự kiện của lớp.

Bùi Văn Quý CH CNTT 2013 50 3.3.3. Biểu đồ tuần tự mức đỉnh

Mô tả tương tác giữa các đối tượng theo trình tự về thời gian và biểu diễn sự tương tác giữa các đối tượng bằng việc nhấn mạnh thứ tự trao đổi giữa các đối tượng.

Hình 3.3: Biểu đồ tuần tự tổng quát hệ thống 3.4. Cài đặt dịch vụ cho hệ thống

Tích hợp Web Service vào hệ thống gồm các dịch vụ như dịch vụ hộ khẩu gia đình, dịch vụ giáo dục, dịch vụ người dùng, dịch vụ thống kê báo cáo. Để làm rõ Web Service tích hợp vào hệ thống như thế nào, sau đây tác giả xin trình bày một dịch vụ tiêu biểu và được sử dụng nhiều ở các cấp bậc trong giáo dục đó là dịch vụ hộ khẩu gia đình:

- Cung cấp thông tin người dùng từ phía web, mobile để quản lý trẻ, quản lý hộ khẩu, quản lý trẻ ngoại lai.

- Tái sử dụng: cung cấp thông tin trẻ, chủ hộ cho các bậc học khác trong hệ thống giáo dục.

- Đường dẫn Web Service: http://pcth-dangle/ServiceHoKhauGiaDinh. asmx?wsdl

Bùi Văn Quý CH CNTT 2013 51 3.4.1. Dịch vụ cung cấp (Service provider)

- Dữ liệu của dịch vụ

ChuHo(#ID, SoPhieu, MaThon, DiaChi, NgayVaoSo,…): Thông tin chủ hộ trong

thôn

Hình 3.4: Cơ sở dữ liệu quan hệ

Tre(#MaTre, IDChuHo, MaQuanHe, MaDanToc, HoTen, NgaySinh, …): Chứa

các thông tin trẻ đang học tiểu học.

GiaoVien(#ID, MaTruong, MaGV, TenGV, NgaySinh, GioiTinh, …): Chứa các

thông tin giáo viên trong trường. (adsbygoogle = window.adsbygoogle || []).push({});

Lop(#ID, MaTruong, MaLop, TenLop, …): Chứa các thông tin của lớp.

KetQuaThiTotNghiep(#ID, Matruong, NamHoc, TongSoPhongThi, Điem, …):

Lưu thông tin của học sinh thi tốt nghiệp.

Hình 3: Dữ liệu quan hệ hộ khẩu gia đình

CanBoGiaoVien ID MaTruong MaGV HoTenGV NgaySinh GioiTinh MaDanToc TrinhDo XepLoai ChucVu CanBoNhanVien ID MaTruong CSVC ID MaTruong ChiTietTre MaChiTiet MaTre NgayDieuTra ChuaDiHoc BiChet TinhTrangKhuyetTat DiHocMuon DiHocSom NamHoc1 NamHoc2 NamHoc3 ChuHo ID SoPhieu MaThon TenChuHo DiaChi NgayVaoSo DanToc MaDanToc TenDanToc ThieuSo GiaoVien_Lop ID MaGV MaLop NamHoc HocSinhChuyen IDHSChuyen MaTre NamHoc NgayChuyenDi ChuyenDiHocODau GhiChu NgayChuyenDen TuDauDen Huyen MaHuyen MaTinh TenHuyen GhiChu KetQuaThiToTNghiep ID MaTruong LenLopLuuBan ID MaTre MaLop NgayNhap NamHoc GhiChu Lop MaLop MaTruong TenLop GhiChu [9buoi] Lop_Tre ID MaTre MaLop NamHoc QuanHe MaQuanHe TenQuanHe Tinh MaTinh TenTinh GhiChu Thon kiHieuThon MaThon MaXa TenThon GhiChu Tre MaTre IDChuHo MaQuanHe MaDanToc HoTen NgaySinh GioiTinh GhiChu Tre_BoHoc ID MaTre MaLop NamHoc BoHoc Truong MaTruong MaXa KyHieuTruong TenTruong GhiChu Xa MaXa MaHuyen KyHieuXa TenXa GhiChu

Bùi Văn Quý CH CNTT 2013 52

LenLopLuuBan(#ID, MaTre, MaLop, NgayNhap, NamHoc, …): Lưu các thông

tin học sinh lên lớp lưu ban.

- Mô tả dịch vụ: Dịch vụ chứa các phương thức liên qua chủ hộ và trẻ, sau đây là một số phương thức như phương thức “Get_tre” lấy thông tin trẻ theo mã code dưới đây được viết bằng ngôn ngữ C#.

Publish dịch vụ đường dẫn là http://pcth-dangle/ServiceHoKhauGiaDinh. asmx?wsdl có giao diện wsdl hiển thị:

Web Service cung cấp cơ chế cho phép kiểm tra dữ liệu trả về: Lựa chọn phương thức “Get_List_ChuHo” để kiểm tra.

namespace PCGD.Web {

[AspNetCompatibilityRequirements(

RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)] public class ServiceHousehold : IServiceHousehold

{

PCGDEntities db = new PCGDEntities(); /// <summary>

/// Thêm trẻ /// </summary>

/// <param name="tre">đối số</param>

/// <returns>Mã:200 là thành công ngược lại là không thành công</returns> [OperationContract]

public int Insert_Tre(Tre tre) { try { db.Tres.AddObject(tre); return 200; } Catch { return -1; } } /// <summary>

Bùi Văn Quý CH CNTT 2013 53 Kết quả thông tin được hiển thị dưới dạng XML như sau:

3.4.2. Dịch vụ đăng ký (Service registry)

Để sử dụng được Web Service đã xây dựng, ta phải tìm kiếm và đăng ký. Thực hiện bằng cách thêm vào thêm một đường dẫn tham chiếu tới địa chỉ của Web Service đã được public:

Bùi Văn Quý CH CNTT 2013 54 Nhấn “Discover” Web Service sẽ tìm kiếm các dịch vụ đang sử dụng và lựa chọn dịch vụ hộ khẩu gia đình làm dịch vụ sử dụng. Sau đó đăng ký dịch vụ sử dụng bằng cách nhấn vào nút “Go” để dịch vụ liệt kê các hàm được sử dụng nhấn vào nút “OK” để hoàn tất quá trình đăng ký dịch vụ.

Hình 3.7: Sử dụng Service Discover để tìm kiếm

Bùi Văn Quý CH CNTT 2013 55 3.4.3. Dịch vụ sử dụng (Service consumer)

Đoạn mã dưới đây viết bằng ngôn ngữ C# sẽ thực hiện quá trình từ Service Consumer tới Service Provider.

Dữ liệu được nhận kết quả và hiển thị trên giao diên chủ hộ gia đình:

3.5. Sử dụng dịch vụ cho hệ thống khác

Hệ thống khác ở đây được đề cập là hệ thống phổ cập giáo dục trung học cơ sở, hệ thống này được xây dựng trên nền Web và sử dụng ngôn ngữ lập trình PHP để phát triển hệ thống. (adsbygoogle = window.adsbygoogle || []).push({});

Sử dụng dịch vụ hộ khẩu gia đình để tích hợp vào hệ thống phổ cập giáo dục trung học cơ sở.

- Dịch vụ hộ khẩu gia đình được sử dụng nhiều để biết các thông tin trẻ được tốt nghiệp tiểu học, để sử dụng cho quá trình theo dõi học sinh và thống kê báo cáo hàng năm.

- Publish dịch vụ đường dẫn là http://pcth-dangle/ServiceHoKhauGiaDinh. asmx?wsdl.

- Ngôn ngữ sử dụng ngôn ngữ lập trình PHP.

Đoạn mã code dưới đây dùng để lấy thông tin danh sách chủ hộ, kèm theo Hình 3.9: Giao diện chủ hộ sử dụng "Web Service HoKhauGiaDinh" //khai báo service client

PCGDServiceReference.ServicePCGDClient sv = new PCGDServiceReference.ServicePCGDClient(); //Lấy danh sách chủ hộ theo cơ chế đồng bộ

Bùi Văn Quý CH CNTT 2013 56 các trẻ trong chủ hộ và hiển thị dữ liệu lên Website:

3.6. Một số giao của diện hệ thống

Hệ thống quản lý phổ cập tiểu được phát triển dựa trên nền Web sử dụng công nghệ Silverlight và ngôn ngữ lập trình C#. Một số giao diện chính được trình bày trong các phần tiếp theo.

3.6.1. Giao diện chính hệ thống

Hình 3.10: Giao diện chính của chương trình 3.6.2. Đăng nhập hệ thống

- Mục đích: chức năng này sẽ kiểm tra tài khoản sử dụng hệ thống có hợp lệ hay không, nhằm đảm bảo người dùng sử dụng đúng các chức năng được cấp.

<?php

function Get_List_ChuHo{

$client = new SoapClient('http://pcth-dangle/ServiceHoKhauGiaDinh. asmx?wsdl'); //lấy ra danh sách chủ hộ từ Web Service được cung cấp

$list_chuho = $client->Get_List_ChuHo(); }

Bùi Văn Quý CH CNTT 2013 57 - Đường dẫn Web Service: http://pcth-dangle/ServiceUser. asmx?wsdl

- Tái sử dụng dịch vụ: sử dụng dịch vụ cho hệ thống chạy nền Web hoặc Mobile.

- Giao diện đăng nhập hệ thống:

Hình 3.11: Giao diện đăng nhập hệ thống 3.6.3. Quản lý người dùng

- Mục đích: chức năng này giúp Admin có thể quản lý các người dùng trong hệ thống.

- Đường dẫn Web Service: http://pcth-dangle/ServiceHoKhauGiaDinh. asmx?wsdl

- Tái sử dụng dịch vụ: sử dụng dịch vụ cho hệ thống chạy nền Web hoặc di động.

- Giao diện chức năng:

Bùi Văn Quý CH CNTT 2013 58 3.6.4. Nhập chủ hộ

- Mục đích: giúp người quản lý quản lý, nhập liệu dữ liệu về các chủ hộ của các thôn trong xã.

- Đường dẫn Web Service: http://pcth-dangle/ServiceHoKhauGiaDinh. asmx?wsdl

- Tái sử dụng dịch vụ: sử dụng dịch vụ cho các hệ thống chạy nền Web, mobile, cung cấp dịch vụ cho hệ thống khác như hệ thống phổ cập trung học cơ sở.

- Giao diện chức năng:

Hình 3.13: Giao diện chức năng quản lý chủ hộ 3.6.5. Nhập trẻ nội tuyến và ngoại tuyến (adsbygoogle = window.adsbygoogle || []).push({});

- Mục đích: quản lý trẻ là chức năng quan trọng nhất của chương trình quản lý trẻ thuộc chủ hộ ở trong xã.

- Phạm vi: chỉ có admin cấp trường hoặc người dùng được phép sử dụng chức năng ngày mới được sử dụng, chức năng ngày dùng để quản lý, thêm, sửa, xóa trẻ thuộc chủ hộ.

Bùi Văn Quý CH CNTT 2013 59 chức năng chọn “Trẻ” trong mục nhập liệu ở menu trên hoặc bên trái.

- Đường dẫn Web Service: http://pcth-dangle/ServiceHoKhauGiaDinh. asmx?wsdl

- Tái sử dụng dịch vụ: sử dụng dịch vụ cho hệ thống chạy nền Web, mobile, cung cấp dịch vụ cho hệ thống khác như hệ thống phổ cập trung học cơ sở. - Giao diện chức năng:

Hình 3.14: Phân tích giao diện trẻ 3.6.6. Chức năng thống kê, báo cáo

Với 15 báo cáo thống kê theo tiêu chuẩn của Bộ Giáo dục và Đạo tạo và 5 biểu đồ thống kê trên các tiêu chí về hộ khẩu gia đình, giáo viên trong trường, số trẻ tốt nghiệp đã đáp ứng đầy đủ các dữ liệu phổ cập tiểu học. Kết quả báo cáo thống kê được thể diện trong phụ lục [4], [5]

 Thống kê theo các tiêu chuẩn của Bộ Giáo dục và Đào tạo

- Đường dẫn Web Service: http://pcth-dangle/ServiceStatistic. asmx?wsdl - Tái sử dụng dịch vụ: sử dụng dịch vụ cho các hệ thống chạy nền Web,

mobile, cung cấp dịch vụ này cho hệ thống khác như hệ thống phổ cập trung học cơ sở.

Bùi Văn Quý CH CNTT 2013 60 - Giao diện của chức năng:

Hình 3.15: Giao diện chức năng thống kê trẻ em trong diện PCGD

 Thống kê dạng biểu đồ

- Mục đích: đưa ra một thống kê giúp cho người xem có một cái nhìn tổng quát về kết quả thống kê thông qua dạng biểu đồ.

- Giao diện của chức năng:

Hình 3.16: Giao diện chức năng biểu đồ thống kê - Thống kê kết quả thi tốt nghiệp

Chức năng này cho phép người sử dụng xem thông tin, theo dõi chi tiết về các kết quả thi tốt nghiệp qua các năm học của nhà trường.

- Thống kê đội ngũ giáo viên

Chức năng này cho phép người sử dụng xem thông tin về đội ngũ cán bộ giáo viên trong nhà trường về số lượng giáo viên, trình độ giáo viên, ...

- Biên bản tập hợp kết quả thống kê

Chức năng này cho phép người sử dụng tạo một biên bản tổng hợp các số liệu thống kê.

Bùi Văn Quý CH CNTT 2013 61 3.7. Triển khai hệ thống

Hệ thống đáp ứng được những tiêu chí đề ra và hiện nay hệ thống đã triển khai thử nghiệm tại trường tiểu học Đặng Lễ, xã Đặng Lễ, huyện Ân Thi, tỉnh Hưng Yên. Hệ thống đã bước đầu hoạt động và thu được kết quả báo cáo thống kê vào năm học 2014-2015.

Ngoài ra hệ thống còn cung cấp các dịch vụ cho hệ thống khác như hệ thống quản lý dữ liệu trung học cơ sở Đặng Lễ, xã Đặng Lễ, huyện Ân Thi, tỉnh Hưng Yên vào năm học 2015-2016. Năm học 2015-2016 sẽ đưa ra các báo cáo, thống kê theo tiêu chuẩn của Bộ Giáo dục và Đào tạo.

3.8. Đánh giá hệ thống

Qua quá trình cài đặt hệ thống phổ cập tiểu học dựa trên kiến trúc hướng dịch vụ có những ưu điểm hơn so với mô hình kiến trúc truyền thống được phân tích ở trên, bảng sau sẽ liệt kê những đặc điểm giữa các kiến trúc:

Đặc điểm Hệ thống quản lý dữ liệu phổ cập tiểu học dựa trên SOA

Hệ thống PCGD được xây dựng theo kiến trúc truyền thống Tái sử dụng Khả năng tái sử dụng tốt, tránh

trùng lặp các module hệ thống, cung cấp được các module tích hợp cho hệ thống khác.

Khả năng tái sử dụng không tốt, do hệ thống xây dựng trên kiến trúc truyền thống vì vậy không hỗ trợ tính tái sử dụng lại các module mà phải xây dựng lại các module để tích hợp hệ thống. Thời gian (adsbygoogle = window.adsbygoogle || []).push({});

phát triển hệ thống

Mất nhiều thời gian do số lượng module được tách riêng biệt nên

Một phần của tài liệu Hệ thống quản lý dữ liệu phổ cập tiểu học dựa trên kiến trúc hướng dịch vụ (Trang 45)