Yờu cầu tiền kiểm tra và phõn lớp dữ liệu cú thể xuất hiện do một trong hai nguyờn nhõn:
- Đến thời điểm chạy của quỏ trỡnh kiểm tra và phõn lớp dữ liệu - Cú yờu cầu của người dựng trực tiếp
- Cỏc tham số tỏc động đến quỏ trỡnh kiểm tra và phõn lớp dữ liệu bao gồm: - Cỏc tham số lưu trữ dữ liệu
- Cỏc tham số về cấu trỳc thư mục đầu vào
- Cỏc tham số về cấu trỳc bảng dữ liệu và cỏch ỏnh xạ dữ liệu
Sau khi cú được danh sỏch cỏc file dữ liệu cần load thỡ quỏ trỡnh sẽ được thực hiện. Trong quỏ trỡnh load người sử dụng cú thể ngắt quỏ trỡnh nếu cú yờu cầu. Quỏ
trỡnh load cú thể thực hiện đồng thời nhiều file tựy theo số lượng thread được cấu hỡnh và số lượng bảng dữ liệu được load vào. Cỏc bản tin được load vào đều được đỏnh dấu bởi một số thể hiện thứ tự lần load dữ liệu, điều này cú ý nghĩa quan trọng trong cỏc quỏ kiểm kiểm soỏt về sau.
c) Tiền kiểm tra và phõn lớp dữ liệu
Đầu vào của quy trỡnh này chớnh là cỏc bản tin đó được load vào database, do đú quỏ trỡnh kiểm tra và phõn lớp dữ liệu chủ yếu được thực hiện thụng qua cỏc cõu lệnh SQL. Vỡ vậy hệ thống phải đảm bảo để cú thể cấu hỡnh được số lượng cũng như nội dung của cỏc cõu lệnh SQL.
d) Khối tinh chỉnh và đỏnh mó dữ liệu
Khối chức năng này phải đảm nhiệm cỏc nhiệm vụ:
- Xử lý chờm
- Xử lý ghộp
- Đỏnh mó cuộc gọi
- Load cỏc cuộc gọi đó được xử lý vào cỏc database tớnh cước tương ứng
Quỏ trỡnh tinh chỉnh (xử lý chờm, ghộp cuộc) và đỏnh mó (mỗi cuộc gọi sẽ được gỏn bởi một mó nhận diện duy nhất trong chu kỳ đú) dữ liệu là một trong những yờu cầu hết sức quan trọng trong cỏc hệ thống tớnh cước. Khi đú cỏc hệ thống tớnh cước hoàn toàn khụng phải kiểm tra gỡ về tớnh chớnh xỏc và hợp lệ của cỏc cuộc gọi mà chỉ tập trung vào cỏc chớnh sỏch cước.
Quỏ trỡnh xử lý dữ liệu phải đảm bảo tớnh linh hoạt trong cỏc chớnh sỏch xử lý cuộc gọi chờm, cuộc gọi ghộp do cỏc chớnh sỏch này cú thể thay đổi theo thời gian. Do chất lượng cuộc gọi của cỏc phần tử mạng cú thể khỏc nhau nờn chớnh sỏch xử lý cuộc gọi phải cú độ linh hoạt theo từng hướng cuộc gọi (mó vựng)
Để đảm bảo tốc độ dữ liệu cần xử lý sẽ được sẽ được load ra ngoài để xử lý sau đú ghi ra file và cuối cựng là load trở lại database của cỏc hệ thống tớnh cước.
Việc phõn lập này cú rất nhiều ưu điểm: - Đảm bảo tốc độ xử lý của hệ thống
- Phõn lập được cỏc chức năng khi dữ liệu cần xử lý giữa cỏc hệ thống tớnh cước khỏc nhau cú thể cú cỏc chớnh sỏch xử lý khỏc nhau
Quy trỡnh xử lý dữ liệu
Chờ yêu cầu tinh chỉnh và đánh mã dữ liệu Có yêu cầu Kết thúc Nạp tham số Thành công Select danh sách dữ liệu cần xử lý
Lấy dữ liệu dựa theo quá trình phân
chia Lấy đ-ợc dữ liệu Tinh chỉnh và đánh mã dữ liệu L-u số liệu đã xử lý ra file + - + - - + + - Kết thúc quá trình xử lý dữ liệu Hỡnh 3-29. Quy trỡnh xử lý dữ liệu Load dữ liệu
Dữ liệu sau khi được tinh chỉnh sẽ được ghi ra file, cỏc file này sau đú sẽ trở thành đầu vào của quỏ trỡnh load dữ liệu vào của cỏc hệ thống tớnh cước. Do đầu vào của hệ thống tớnh cước là cố định nờn khụng nhất thiết phải thiết lập cỏc tham số định nghĩa quỏ trỡnh load dữ liệu vỡ đầu vào và đầu ra của hệ thống đều cú thể được chương trỡnh điều chỉnh cho phự hợp.
3.2.4.Mụ hỡnh vật lý của hệ thống
Hệ thống chuyển đổi số liệu cước tuy được viết trờn cựng một module nhưng việc triển khai là khỏc nhau. Hệ thống sẽ bao gồm chương trỡnh chạy tại cỏc điểm thu thập dữ liệu và hệ thống chạy tại trung tõm xử lý dữ liệu.
Hệ thống cần trang bị tại cỏc điểm thu thập dữ liệu bao gồm:
- Một mỏy PC chạy hệ thống chuyển đổi, chuẩn húa và lọc dữ liệu, mỏy này phải cú
đường mạng kết nối đến mỏy chủ Ftp Server tại trung tõm và kết nối được đến mỏy chủ CSDL Mediation.
- Cỏc file thư viện cần thiết để cú thể chuyển đổi dữ liệu - Hệ thống tại trung tõm bao gồm:
- Mỏy chủ CSDL Mediation - Mỏy xử lý dữ liệu Mạng truyền số liệu Điểm thu thập Tổng đài X.25 Điểm thu thập Tổng đài TCP/IP Điểm thu thập Tổng đài X.25 Máy xử lý dữ liệu Trung tâm xử lý Ftp Server Mediation Database Server Billing Database Server
Hỡnh 3-30. Mụ hỡnh vật lý của hệ thống thu thập và xử lý dữ liệu
Mụ hỡnh này bao gồm một trung tõm xử lý dữ liệu và nhiều điểm thu thập dữ liệu. Việc truyền dữ liệu cú thể được thực hiện thụng qua mạng Intranet hoặc Internet. Mỏy chủ CSDL Mediation chỉ cần cấu hỡnh vừa phải nhưng cần phải cú giải phỏp lưu trữ dữ liệu lớn do lượng dữ liệu thu thập cho cỏc hệ thống tớnh cước kết nối thường rất lớn.
3.3. Cài đặt miền chuyờn biệt định dạng dữ liệu cước để tạo ra cỏc thư viện liờn kết động liờn kết động
Như đó trỡnh bày trong mục 3.2.2. (b) về chức năng thu thập số liệu trong giai đoạn chuyển đổi số liệu, do đặc trưng thường xuyờn cần tạo ra cỏc file DLL của mỗi tổng đài để phục vụ chức chuyển đổi dữ liệu cước, cỏc thư viện này thường xuyờn được cập nhật khi tổng đài được nõng cấp hoặc cú tổng đài mới do đú tụi đó sử dụng cụng cụ Microsoft DSL để thiết kế miền chuyờn biệt để sinh ra cỏc dll tự động theo đặc trưng của từng tổng đài. Cụng việc thiết kế bao gồm cỏc bước sau:
3.3.1.Định nghĩa miền chuyờn biệt định dạng dữ liệu tổng đài
Để định nghĩa một miền chuyờn biệt về file cước của tổng đài ta sử dụng một số thuật ngữ sau:
Thuật ngữ Giải thớch
CDR Call Detail Record
Bản ghi chi tiết cuộc gọi
calling Số gọi
Called Số bị gọi
sTime Thời gian bắt đầu cuộc gọi
eTime Thời gian kết thỳc cuộc gọi
duration Độ dài cuộc gọi
REC_SIZE Chiều dài của một cuộc gọi (byte)
BLOCK_HEADER Chiều dài của phần header
BLOCK_SIZE Chiều dài của một BLOCK (một block bao gồm nhiều bản ghi cuộc gọi)
REC_PER_BLOCK= BLOCK_SIZE div REC_SIZE
DANH SÁCH MỘT SỐ CHỦNG LOẠI TỔNG ĐÀI
Cỏc đặc trưng của miền file cước tổng đài: Chiều dài số chủ gọi khụng vượt quỏ 15
Trong cỏc file CDR cước, phần header chỉ ghi thụng tin về chủng loại tổng đài. Phần dữ liệu tiếp theo sẽ lần lượt ghi cỏc BLOCK chứa thụng tin cước, mỗi một BLOCK lại bao gồm nhiều RECORD. RECORD là phần dữ liệu chứa thụng tin của một cuộc gọi. Việc quy định số lượng cỏc record trong một block và số lượng cỏc block trong một file cdr là tựy thuộc vào từng chủng loại tổng đài.
Ta sử dụng cỏc thuật ngữ, cỏc đặc trưng của miền tổng đài để tạo ra miền tổng đài CDRAXE bằng cụng cụ Microsoft DSL:
Tổng đài Hóng
EWSD (Siemens)
E10 (Alcatel - Phỏp)
AXE-10,AXE-105 (Erricson – Sweden- Thụy Điển)
NEAX (NEC - Nhật) StarexVK (LG - Hàn) TDX-1B (Korea - LGIC) NEAX-61 (NEC - Nhật ) S-12 (ShangHai) FETEX-150 (FUJITSU) LINEA-UT (Italia) DMS (Nortel)
STAREX-VK (Korea – LGIC):
Hỡnh 3-31. Định nghĩa miền định dạng file cước tổng đài
Sau khi thiết kế miền tổng đài AXECDR thực hiện F5 để chạy ứng dụng, hệ thống sẽ sinh ra lớp ứng dụng cho người phỏt triển cú thể sử dụng, kế thừa, bổ sung thuộc tớnh, phương thức lớp tổng đài CDRAXE.
Hỡnh 3-32. Ứng dụng thiết kế trờn miền định dạng file cước tổng đài
3.3.2.Định nghĩa cỏc luật ràng buộc
Để tạo ra cỏc luật ràng buộc trong miền tổng đài, ta thờm vào trong Project một file Validation.cs, file này phải được khai bỏo theo một số quy tắc như sau:
using System; using System.Collections.Generic; using System.Text; using Microsoft.VisualStudio.Modeling.Validation; namespace Company.CDRDomain { [ValidationState(ValidationState.Enabled)] public partial class AXECDR
{
[ValidationMethod(
ValidationCategories.Menu | ValidationCategories.Open | ValidationCategories.Save)]
private void ValidateHasName(ValidationContext context) {
if (string.IsNullOrEmpty(this.Name)) {
}
if (this.BLOCK_HEADER==null) {
context.LogError("Ban chua nhap BLOCK_HEADER", "Thong bao", this); }
if (this.BLOCK_SIZE == null) {
context.LogError("Ban chua nhap BLOCK_SIZE", "Thong bao", this); }
if (this.BYTE_TOTAL == null) {
context.LogError("Ban chua nhap BYTE_TOTAL", "Thong bao", this); }
if (this.REC_PER_BLOCK == null) {
context.LogError("Ban chua nhap REC_PER_BLOCK", "Thong bao", this); }
if (this.REC_SIZE == null) {
context.LogError("Ban chua nhap REC_SIZE", "Thong bao", this); }
if (this.REC_SIZE > this.BLOCK_SIZE) {
context.LogError("Gia tri REC_SIZE phai < gia tri BLOCK_SIZE", "Thong bao", this);
}
if (this.BLOCK_SIZE > this.BINARY_LENGTH) {
context.LogError("Gia tri BLOCK_SIZE phai < gia tri BINARY_LENGTH", "Thong bao", this);
} } } }
3.3.3.Sinh thư viện liờn dữ liệu tổng đài liờn kết động
Sau khi người phỏt triển sử dụng miền ứng dụng tổng đài AXECDR, nhập cỏc thụng tin thuộc tớnh, bổ sung hoặc thay đổi một số phương thức tương tỏc lờn file CDR tổng đài, sau cựng sẽ thực hiện chức năng sinh ra file thư viện dll động bằng cỏch chọn chức năng Transform All Templates như hỡnh vẽ:
KẾT LUẬN
Kết quả đạt được
Mục tiờu của luận văn đó đưa ra:
- Tập chung tỡm hiểu khỏi niệm, cỏc mụ hỡnh ứng dụng thực tế và cỏc lợi ớch mang lại khi sử dụng mụ hỡnh miền chuyờn biệt
- Tỡm hiểu một tiếp cận với mụ hỡnh miền chuyờn biệt bằng cụng cụ Microsoft DSL. - Ứng dụng mụ hỡnh chuyờn biệt miền trong thiết kế bài toỏn chuyển đổi dữ liệu cước.
Kết quả luận văn đạt được:
- Tỡm hiểu mụ hỡnh chuyờn biệt miền:
Khỏi niệm và giải phỏp mụ hỡnh miền chuyờn biệt.
Cỏc vớ dụ thực tế về mụ hỡnh ứng dụng. Cỏc lợi ớch mang lại.
Hướng dẫn cỏch phỏt triển mụ hỡnh miền chuyờn biệt.
- Tỡm hiểu tiếp cận cụng cụ hỗ trợ thiết kế miền chuyờn biệt Microsoft DSL:
Hướng dẫn định nghĩa miền chuyờn biệt
Hướng dẫn định nghĩa cỏc ràng buộc
Hướng dẫn sinh mó tự động và cài đặt hệ thống miền chuyờn biệt
- Sử dụng cụng cụ hỗ trợ thiết kế miền chuyờn biệt Microsoft DSL Tool để thiết kế
miền dữ liệu cước tổng đài tạo tự động sinh ra thư viện liờn kết động cho cỏc lớp dữ liệu tổng đài, gồm cú cỏc chức năng:
Tạo miền chuyờn biệt cho cỏc lớp tổng đài.
Tạo cỏc ràng buộc.
Việc ỏp dụng mụ hỡnh chuyờn biệt miền để thiết kế sinh lớp thư viện tổng đài động đó mang lại nhiều lợi ớch, giỳp cho người phỏt triển dễ dàng sử dụng miền tổng đài đú để cú thể thay đổi, tựy biến cỏc thụng tin một cỏch linh hoạt mà khụng cần phải sửa mó nguồn nhiều, mọi thao tỏc đều cú thể được thực hiện trờn giao diện đồ họa.
Hướng phỏt triển
Do thời gian thực hiện luận văn cũn hạn chế nờn luận văn mới chỉ thực hiện cài đặt miền chuyờn biệt cho lớp dữ liệu tổng đài một cỏch cơ bản. Hướng phỏt triển tiếp theo của luận văn sẽ tập trung vào mở rộng cài đặt miền chuyờn biệt của lớp dữ liệu tổng đài cho nhiều chủng loại tổng đài hơn, phỏt triển nhiều chức năng chuyờn biệt hơn để hỗ trợ tối đó người phỏt triển hệ thống về tổng đài.
TÀI LIỆU THAM KHẢO
Tiếng Việt
1. Nguyễn Văn Vỵ, Nguyễn Việt Hà, “Kỹ nghệ phần mềm”, NXB Giỏo dục năm 2009.
2.Nguyễn Văn Vỵ. “Phõn tớch thiết kế cỏc hệ thống thụng tin hiện đại theo hướng cấu trỳc & hướng đối tượng”, NXB Thống kờ năm 2002.
Tiếng Anh
1. Domain-Specific Modeling for Full Code Generation: Juha-Pekka Tolvanen, MetaCase, www.metacase.com
2.Domain-Specific Modeling with metaedit+: 10 times faster than UML – MetaCase
3.Metamodel-based UML Notations for Domain-specific Languages-Achim D. Brucker and Jurgen Doser
4.Steve Cook Software Architect Enterprise Frameworks & Tools Group Microsoft Corporation
5.Domain-Specific Developement with Visual Studio DSL Tools -Steve Cook - Gareth Jones - Stuart Kent Alan - Cameron Wills
6.Domain-Specific Language Engineering - Eelco Visser
7.Comparison of Microsoft DSL Tools and Eclipse Modeling Frameworks for Domain-Specific Modeling In the context of the Model-Driven Development - Turhan Ozgur