CÁC SƠ ĐỒ UML CỦA HỆ THỐNG BÁO CÁO NHANH

Một phần của tài liệu Xây dựng hệ thống báo cáo nhanh và dự báo trợ giúp ra quyết định tại Ngân hàng Đầu tư và Phát triển Việt Nam (Trang 35)

UML[7] là ngụn ngữ mụ hỡnh hƣớng đối tƣợng để đặc tả, vẽ ra thành hỡnh vẽ, nhằm xõy dựng và làm tài liệu đầy đủ về cơ chế của một hệ thống. Cú thể ỏp dụng UML để mụ hỡnh hoỏ hệ thống phần mềm hay nghiệp vụ. Nú là chọn lựa tốt nhất để xõy dựng hệ thống hƣớng đối tƣợng và dựa trờn cỏc thành phần, nhất là cho cỏc hệ thống lớn và phức tạp.

UML ấn định một tập hợp cỏc kớ hiệu quy ƣớc và sơ đồ để mụ hỡnh hoỏ hệ thống theo phƣơng phỏp hƣớng đối tƣợng. UML cú thể mụ hỡnh hoỏ nhiều kiểu hệ thống khỏc nhau, từ phần mềm đến tiến trỡnh tổ chức.

UML cung cấp 9 kiểu sơ đồ để ta mụ hỡnh hoỏ hệ thống:

- Sơ đồ ca sử dụng (Use Case Diagram) -- để mụ hỡnh hoỏ quy trỡnh nghiệp vụ (business processes)

- Sơ đồ tuần tự (Sequence diagrams) -- để mụ hỡnh hoỏ sự kiện theo thời gian - Sơ đồ hợp tỏc (Collaboration diagrams) -- để mụ hỡnh hoỏ tƣơng tỏc bờn trong hệ thống

- Sơ đồ trạng thỏi (State diagrams) -- để mụ hỡnh hoỏ hành vi của cỏc đố tƣợng của hệ thống.

- Sơ đồ hoạt động (Activity diagrams) -- để mụ hỡnh hoỏ hành vi của cỏc ca sử dụng, đối tƣợng, và operations.

- Sơ đồ lớp (Class diagrams) -- để mụ hỡnh hoỏ cấu trỳc tĩnh của cỏc lớp - Sơ đồ đối tƣợng (Object diagrams) -- để mụ hỡnh hoỏ cấu trỳc tĩnh của cỏc đối tƣợng

- Sơ đồ thành phần (Component diagrams) -- để mụ hỡnh hoỏ cỏc thành phần - Sơ đồ triển khai (Deployment diagrams) -- để mụ hỡnh hoỏ triển khai productive của hệ thống.

- Tuy nhiờn cần lƣu ý rằng UML chỉ là hệ thống kớ hiệu chứ khụng phải là một phƣơng phỏp luận. Nú ấn định cỏc cụng cụ trực quan và ngữ nghĩa để mụ hỡnh hoỏ hệ thống, chứ khụng ấn định một phƣơng phỏp ỏp dụng cỏc kớ hiệu đú. Bởi vậy, một nhà kiến trỳc hay thiết kế dựng sơ đồ nào là tuỳ theo bản chất của hệ thống và mức trừu tƣợng hoỏ.

Cỏc nột nổi bật của UML[7][8] là:

- Xõy dựng mụ hỡnh của hệ thống bằng cỏch phõn ró thành cỏc hệ thống con, làm cho toàn bộ hệ thống dễ hiểu hơn.

- Khi hệ thống càng phức tạp, càng khú nắm bắt, do đú phải cú kĩ thuật mụ hỡnh hoỏ tốt để cú thể quản trị đƣợc nú.

- Một mụ hỡnh tốt với ngữ nghĩa rừ ràng là rất cần thiết để cỏc thành viờn của dự ỏn giao tiếp với nhau và để đảm bảo tớnh đỳng đắn của kiến trỳc.

III.1 Cỏc sơ đồ ca sử dụng III.1.1 Sơ đồ ca sử dụng a. Tỏc nhõn (Actor) [1][3][7][8] Hỡnh 5: Sơ đồ ca sử dụng của hệ thống b. Sơ đồ ca sử dụng mức 1 KetThuc NSD (from Actors) NSD (from Actors) ChonBC TỡmKiem NSD (from Actors) Inan HienThiKQ <<include>> <<include>> XuatBC <<extend>> QuanLyNSD QuanTri (from Actors) NSD (from Actors) (from Actors) CoreBanking (from Actors) TTxuly Timkiem (from Actors) QuanTri (from Actors)

Hỡnh 6: Sơ đồ ca sử dụng mức 1

c. Sơ đồ ca sử dụng mức 2

 Trung tõm xử lý (TTXuly)

Hỡnh 7: Sơ đồ ca sử dụng mức 2 của tỏc nhõn TTXuly

 CoreBanking

Hỡnh 8: Sơ đồ ca sử dụng mức 2 của tỏc nhõn CoreBanking

TTXuLy (from Actors) LuutruDL RestoreDL DongboDulieu TaothumucDL CoreBanking (from Actors) <<extend>> <<extend>> KhaiBaoBC Nhaptay Tudong LuutruDL DongboDulieu <<extend>> <<extend>> Tonghopdulieu KetThuc ThuthapThongtin SinhBC <<extend>> TTXuly (from Actors)

d. Mụ tả ca sử dụng Hỡnh 9: Mụ tả ca sử dụng rl_KyDL rl_XoaDL rl_Luutru rl_LoaiBC DongboDL

(from Use Case View)

<<realize>> <<realize>> <<realize>> <<realize>> <<realize>> rl_KhaibaokyD L TonghopD L

(from Use Case View) rl_Tongho p <<realize> > <<realize> > KhaibaoBC

(from Use Case View)

rl_KhaibaoBC <<realize>>

Tong hopDL

(from Use Case View)

rl_TonghopDL <<realize>>

DongboDL

(from Use Case View)

rl_DongboDL <<realize>>

XuatDL

(from Use Case View)

rl_XuatDL <<realize>>

rl_HIenThitWeb

XuatBC

(from Use Case View)

<<realize>>

rl_FileDl <<realize>>

rl_DoThi <<realize>>

 Ca sử dụng rl_KhaibaoBC

 Diễn tả (brief description): Khai bỏo bỏo cỏo mới trong hệ thống.

 Cỏc tỏc nhõn: NSD

 Luồng sự kiện

NSD Hiển thị Hệ thống

1.Nhập loại bỏo cỏo, số lƣợng cột, số lƣợng dũng, định kỳ, định dạng bỏo cỏo

2. Kiểm tra đó cú bỏo cỏo mới này chƣa. Chƣa cú sẽ thờm vào hệ thống và chi tiết bỏo cỏo

3. Hiển thị bỏo cỏo

Bảng 6: Mụ tả quỏ trỡnh khai bỏo bỏo cỏo mới

 Cỏc ngoại lệ: 1. Loại bỏo cỏo chƣa tồn tại. Thụng bỏo và yờu cầu khai bỏo vào chƣơng trỡnh.

2. Định kỳ bỏo cỏo đó cú trong cỏc định kỳ cũ chƣa. Thụng bỏo và khai bỏo lại nếu chƣa tồn tại

 Cỏc mối quan hệ:

Điều kiện đầu: Loại bỏo cỏo, định kỳ bỏo cỏo đó đƣợc khai bỏo trong bảng bỏo cỏo.

b. Ca sử dụng rl_DongboDL

Diễn tả: Thực hiện đồng bộ dữ liệu thụ từ CoreBanking theo yờu cầu của TTXuly.

Tỏc nhõn: CoreBanking, TTxuly

CoreBanking Ttxuly Hệ thống

1.Nhận dạng dữ liệu cần trớch rỳt và tự động thực hiện đẩy sang Ttxuly

2. Dựng kết nối ODBC, DTS của SQL server thực hiện select và Insert dữ liệu.

3. Nhận dữ liệu từ CoreBanking và lƣu dữ liệu dƣới dạng Table

Bảng 7: Mụ tả quỏ trỡnh đồng bộ dữ liệu

 Ngoại lệ: 1. Nguồn dữ liệu cần lấy trờn CoreBanking. Nguồn nào mới chƣa cú cần thụng bỏo

2. Cỏc bảng chứa dữ liệu đó đƣợc tạo sẵn trƣớc đú. Thụng bỏo và yờu cầu sửa lại, thờm mới nếu thiếu hoặc sai sút thụng tin.

 Cỏc mối quan hệ : Điều kiện đầu:

Điều kiện cuối : Trớch rỳt dữ liệu từ Corebanking vào cỏc kho dữ liệu chung của hệ thống,

c. Ca sử dụng rl_TonghopDL

 Diễn tả: Tổng hợp dữ liệu bỏo cỏo từ cỏc nguồn dữ liệu thụ trờn CoreBanking đẩy về.

 Tỏc nhõn: TTxuly

 Luồng sự kiện

Ttxuly System

1. Xỏc định hệ thống cỏc bỏo cỏo cần xuất dữ liệu theo định kỳ

hiện tổng hợp DL cho bỏo cỏo

Bảng 8: Mụ tả quỏ trỡnh tổng hợp dữ liệu

 Ngoại lệ: 1. Bỏo cỏo khụng cú trong hệ thống.

 Cỏc mối quan hệ:

Điều kiện đầu: Loại bỏo cỏo, định kỳ bỏo cỏo đó đƣợc khai bỏo trong bảng bỏo cỏo.

Điều kiện cuối: tổng hợp và lƣu trữ dữ liệu theo hệ thống bỏo cỏo yờu cầu d. Ca sử dụng rl_XuatBC

 Diễn tả: Xuất nội dung bỏo cỏo theo cỏc hỡnh thức: Hiển thị Web, xuất dạng đồ thị, xuất dạng file.

 Tỏc nhõn: NSD

 Luồng sự kiện

NSD System

1.Lựa chọn bỏo cỏo, hỡnh thức xuất dữ liệu bỏo cỏo

2. Kiểm tra bỏo cỏo trong hệ thống cú dữ liệu hay khụng

3. Nếu cú hiển thị hoặc thực hiện theo yờu cầu của NSD

Bảng 9: Mụ tả quỏ trỡnh xuất bỏo cỏo

 Ngoại lệ: 1. Khụng cú dữ liệu bỏo cỏo do: Bỏo cỏo đú khụng cú dữ liệu tại định kỳ chọn, hoặc do dữ liệu khụng chiết xuất thành cụng trờn Host, hoặc đó cú dữ liệu nhƣng Ttxuly khụng thực hiện đồng bộ bỏo cỏo. Thụng bỏo, thực hiện kiểm tra lại cỏc vấn đề liờn quan đến dữ liệu của bỏo cỏo.

 Mối quan hệ: - Điều kiện đầu:

- Điều kiện cuối: Xỏc định loại bỏo cỏo, định kỳ bỏo cỏo cần xuất. Xỏc định đƣợc bỏo cỏo nào khụng cú dữ liệu hoặc lỗi.

e. Ca sử dụng QuanlyNSD

 Tỏc nhõn: TTxuly (Admin)

NSD Hệ thống

1.

- Nhập thụng tin ngƣời sử dụng - Phõn quyền: Lựa chọn một trong 2 quyền:

- Quyền Admin: Quản lý menu Hệ thống, khai bỏo NSD, khai bỏo lớp bỏo cỏo mới , cỏc chỉ tiờu bỏo cỏo... - Quyền xem, in bỏo cỏo: Cú quyền quản lý, khai thỏc cỏc bỏo cỏo.

1’.Cập nhật thụng tin, ngày khởi tạo user, mó chi nhỏnh, phõn quyền, mó user trờn SIBS.

Phõn cấp một trong cỏc quyền sau:

 Ban Tổng giỏm đốc

 Ban Lónh đạo cỏc ban HSC

 Ban Giỏm đốc chi nhỏnh

 Trƣởng phũng

 Phú phũng

 Chuyờn viờn

2.Đăng nhập hệ thống 2.Kiểm tra cú cũn active khụng. Nếu cũn,

- Kiểm tra nếu chƣa login lần nào và chƣa quỏ 12 thỏng, yờu cầu đổi mật khẩu, nếu đó quỏ 12 thỏng sẽ bị khúa user.

- Kiểm tra đó đến ngày đổi mật khẩu chƣa(6 thỏng) dựa vào ngày đổi mật khẩu lần cuối.Đó đến ngày thỡ thụng bỏo, đƣa ra màn hỡnh đổi mật khẩu

Khi vào chƣơng trỡnh, cập nhật ngày login hệ thống lần cuối

Bảng 10: Mụ tả quỏ trỡnh quản lý người sử dụng

Nhap thong tin dang nhap

Kiem tra user con active khong

Kiem tra user da den han doi mat khau chua

Doi va cap nhat ngay doi mat khau

Login thanh cong

Cap nhat ngay login chuong trinh Den han doi mat khau Kiem tra ngay login lan cuoi cua user

Khoa user Qua thoi gian

12 thang

Thong bao user bi khoa hoac khong ton tai

III.3.3 Sơ đồ hoạt động đối với một số chức năng

III.3.3.1 Phõn tớch ca sử dụng

Hỡnh 11: Phõn tớch ca sử dụng

RL _ HienthiWeb (from Use-Case Realizations)

rl_TonghopBC

(from Use-Case Realizations) TongHopDL

(from Use Case View) <<realize>>

<<realize>> rl_KhaibaoBC

Khai baoBC (from Use Case View)

<<realize>>

rl_TonghopDL (from Use- Case Realizations)

TonghopDL (from Use Case View)

<<realize>>

rl_DongboDL (from Use- Case Realizations)

DongboDL

(from Use Case View) <<realize>>

rl_KyDL

(from Use-Case Realizations)

rl_XoaDL

(from Use-Case Realizations) rl_LoaiBC

(from Use-Case Realizations)

DongboDL (from Use Case View) <<realize>> <<realize>> <<realize>> <<realize>> rl_XuatDL RL_Xuatfile (from Use-Case Realizations)

XuatDL

(from Use Case View) <<realize>>

rl_HienthiWeb (from Use-Case Realizations)

rl_Xuatfile (from Use-Case Realizations)

XuatBC

(from Use Case View)

<<realize>> <<realize>> rl_Dothii <<realize>> <<realize>> rl_Luutru (from Use-Case Realizations)

from Use-Case Realizations

(from Use- Case Realizations)

RL_Dothi

(from Use-Case Realizations) (from Use-

Case Realizations)

rl_KhaiBaokyDL

: c_NhapBC : e_DanhsachBC : frmKhaibaoBC : NSD : e_Baocao : e_ChiTietBC 3. issue( ) 2. CheckExist( ) 4. AddMaster( ) 5. AddDetail( ) 1. issue( ) a. Rl_KhaibaoBC

Hỡnh 12: Sơ đồ hoạt động của RL_KhaibaoBC

b. Rl_TonghopDL

Hỡnh 13: Sơ đồ hoạt động của Rl_TonghopDL

: TTxuly : c_TonghopDL : e_ChiTietDL : e_GiaoDich : e_TonKho : frmTonghop : e_BangDL 5. AddDetail( ) 4. AddMaster( ) 6. ChangeExpOfDay(array) 2. CheckExist( ) 3. SetBlankStore( ) 1. XDngayDL(NgayDL)

c. Rl_DongboDL

Hỡnh 14: Sơ đồ hoạt động của Rl_DongboDL

d.Rl_HienthiBC

Hỡnh 15: Sơ đồ hoạt động của Rl_HienthiBC

: NSD : c_HienthiDulieu : e_KyBC : e_ : e_Baocao : e_ChiTietBaocao : frmDanhsachBC 2. CheckState( ) 6. CheckKyBC 5. ChangeExpOfDay(array) 4. AddDetail( ) 3. AddMaster( ) 1. export(type:Baocao) : frmDongboDL : e_GiaoDich : e_ChiTietDL : c_DongboDL : TTxuly : e_DanhsachBC : e_DSkyBC 1. Distribute() 3. AddMaster( ) 4. AddDetail( ) 2. CheckExists( ) 5. CheckKyBC( )

e. Rl_XuatBC

Hỡnh 16: Sơ đồ hoạt động của Rl_XuatBC

III.3.3.2 Cỏc sơ đồ tuần tự đối với một số chức năng cơ bản

a. Rl_KhaibaoBC

Hỡnh 17: Sơ đồ tuần tự của Rl_KhaibaoBC

: c_LoaiBC : c_ : e_DSbaocao : e : frmKhaiBaoBC : frm : NSD : : e_Baocao : e_ : e_ChiTietBaocao : e_ issue( ) AddMaster( ) AddDetail( ) CheckExist( ) issue( ) : NSD : frm_ChonBC : e_LuutruDL : e_Kieuxuat : e_ChitietBC : c_XuatBC 1. SelectTransact( ) 2. ExportStore( ) 4. ChangeExportOfDay(array) 3. VerifyExport( ) 5. ChangeOwnStore()

b. Rl_TonghopDL

Hỡnh 18: Sơ đồ tuần tự của Rl_TonghopDL

c. Rl_DongboDL

Hỡnh 19: Sơ đồ tuần tự của Rl_DongboDL

d. Rl_XuatBC

Hỡnh 20: Sơ đồ tuần tự của Rl_XuatBC

: NSD

: NSD : c_Xua : c_Xuat BC : e_DSBaocaoi : e_ : e_DulieuLuutru : e_ : e_Baocao : e_ : eChiTiettBõocao : frmXuat : frmXuat export(type:Kieuxuat) CheckState( ) AddMaster( ) AddDetail( ) ChangeExpOfDay(array) : NSD

: : packageDL : : c_DBoDL : c : e_ : e_ChitietDL : e_BangDL : e_ : e_NgayDL : e : e_LoaiDLi : e_ Import(ThuthapDL) AddMaster( ) AddDetail( ) ChangeImportOfDay(array) CheckExist( ) SetBlankStore( ) : e_DSbaocao : e_ : TTxuly

: : packageDL : : c_ : c_StoreTHBC : e_t : e_ChiTietBaocaot : e_KyBC : e_DulieuluutruBCi : e_ Distribute()

AddMaster( )

AddDetail( )

CheckExists( )

III.3.3. Thiết kế sơ đồ lớp

Cỏc đối tƣợng chớnh [1][3][9]

Hỡnh 21: Sơ đồ cỏc đối tượng lớp chớnh

c_TonghopDL

impStore()

(from Use-Case Realizations)

C_DongboDL

issue() Checkexist()

(from Use-Case Realizations)

c_XuatBC

Distribute() export()

(from Use-Case Realizations)

e_DLBaocao ReportID : string ItemID: Int Branch : string DataDate : Date CurrCode : string Value1 : Decimal Value2: Decimal Value3 : Decimal Value4 Decimal Value5 : Decimal Value5: Decimal Value6 : Decimal Value7 : Decimal Value8: Decimal Value9 : Decimal CharValue1 string CharValue2 : string CharValue3: string AddMaster() VerifyImport()

(from Use-Case Realizations)

e_ChiTietBC ReportID : String ItemID : String ItemParent: Int ItemDescription : String Prefix : String Suffix : Bit Caption : String Col : String GL : String SQLStatement : String Note : String AddDetail()

(from Use-Case Realizations)

e_DMmodulBC CategoryCode : Date CategoryName : Int CategoryTableDefine : String PrimaryKey : Int DisplayField : String LinkAddress: string InUse: Int StoreProcedure : String PeriodCombo : String CurrencyCombo : String BranchCombo : string issue() CheckExist() ChangeOwnStore() CheckState() SetBlankStore()

(from Use-Case Realizations)

e_DSbaocao CategoryID : Date ReportID : string ReportName: String CaptionWidth: Int ReportWidth: Int ReportFont: Int ReportHeader: Int ReportFooter: Int CurrencyTitle: String ReportRate: String ChangeImpOfDay()

(from Use-Case Realizations)

c_KhaibaoBC

(from Use-Case Realizations)

issue() ChangeExpOfDay() RoundPosition: String LinkAddress: String FirstColumnCaption: String DisplayEmptyItem: String ReportType: String ReportMasterTitle: String ReportMasterFooter: String 1 1..* 1 1..* 1 1..* 1..* 1 1 1 1 1..* 1 1..* 1..* 1..* 1 1 1 1 1 1

<<Class>>KhaibaoBC Tờn hàm Tham số Đầu ra AccessLevel_DeleteByID AccessLevel_GetAll AccessLevel_GetByID AccessLevel_Insert AccessLevel_Update ReportID: string

Khai bỏo một bỏo cỏo mới vào bảng ReportID.

Xỏc nhận xem Bỏo cỏo này đó tồn tại trong chƣơng trỡnh hay chƣa

Lấy dữ liệu từ bảng danh sỏch lớp bỏo cỏo

Thờm mới lớp bỏo cỏo Sửa đổi lớp bỏo cỏo Xúa lớp bỏo cỏo AdminID_DeleteByCategoryCodeAnd ID AdminID_DeleteByID AdminID_GetAll AdminID_GetByCategoryCodeAndID AdminID_GetByCategoryID AdminID_GetByID AdminID_Insert AdminID_Update Categories_DeleteByID Categories_GetAll Categories_GetByID Categories_GetByUserID Categories_Insert Categories_Update

Lấy dữ liệu từ bảng danh sỏch bỏo cỏo

Thờm mới bỏo cỏo Sửa đổi bỏo cỏo Xúa bỏo cỏo ReportDetails_GetByManualReportID

ReportDetails_GetByReportID

ReportDetails_GetByReportIDAndIte mID

ReportDetails_Update

Lấy dữ liệu từ bảng nội dung cỏc bỏo cỏo

Thờm mới nội dung bỏo cỏo Sửa đổi bỏo cỏo

Xúa bỏo cỏo ReportFieldPosition_DeleteByPkId

ReportFieldPosition_GetByPkId ReportFieldPosition_GetByReportID

Lấy dữ liệu từ bảng nội dung cỏc bỏo cỏo

ReportFieldPosition_GetByReportIDA ndItemPosition

ReportFieldPosition_Insert ReportFieldPosition_Update

Sửa đổi nội dung bỏo cỏo Xúa nội dung bỏo cỏo

ReportID_DeleteByID ReportID_GetAll ReportID_GetByID ReportID_Insert ReportID_Update Lấy dữ liệu từ bảng mó cỏc bỏo cỏo

Thờm mới mó bỏo cỏo Sửa đổi mó bỏo cỏo Xúa mó bỏo cỏo

Bảng 11: Mụ tả lớp khai bỏo bỏo cỏo

<<Class>>DongboDL

Tờn hàm Tham số Đầu ra

Package_BCN Datadate: Date (Ngày dữ liệu)

Thờm cỏc dữ liệu của ngày hệ thống vào bảng dữ liệu thụ. CreateAllReportData ReportID: string Tạo dữ liệu cho cỏc bỏo cỏo

Bảng 12: Mụ tả lớp đồng bộ dữ liệu . <<Class>>TonghopDL Tờn hàm Tham số Đầu ra Issue() void ReportID: Mó bỏo cỏo Kyhan: Kỳ bỏo cỏo

Kiểm tra loại bỏo cỏo CheckExists() Boolean CheckState() Boolean SetBlankStore() void CreateAllReportData CreateDateHistory CreateReportDataTable CreateReportDataTemp CreateSpecialItems

Tạo bảng dữ liệu lƣu trữ dữ liệu đó đƣợc tổng hợp

InputItemsData

InsertDataTempIntoReportData

Thực hiện insert dữ liệu vào bảng tạm và bảng lƣu trữ dữ liệu của cỏc bỏo cỏo

<<Class>>XuatBC

Tờn hàm Tham số Đầu ra

ExportToExcel() ReportID: Mó bỏo cỏo Kyhan: Kỳ bỏo cỏo

File dữ liệu Excel

InputItemsData

InsertDataTempIntoReportData

Thực hiện insert dữ liệu vào bảng tạm và bảng lƣu trữ dữ liệu của cỏc bỏo cỏo

Bảng 14: Mụ tả lớp xuất bỏo cỏo

Một phần của tài liệu Xây dựng hệ thống báo cáo nhanh và dự báo trợ giúp ra quyết định tại Ngân hàng Đầu tư và Phát triển Việt Nam (Trang 35)