Tải bản đầy đủ (.pdf) (105 trang)

Nghiên cứu, phát triển và ứng dụng kiến trúc hướng mô hình trong công nghệ phần mềm

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.11 MB, 105 trang )


ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ




LÂM THỊ THÚY HOA


NGHIÊN CỨU, PHÁT TRIỂN VÀ ỨNG DỤNG
KIẾN TRÚC HƯỚNG MÔ HÌNH TRONG
CÔNG NGHỆ PHẦN MỀM




LUẬN VĂN THẠC SĨ









Hà Nội – 2009


ĐẠI HỌC QUỐC GIA HÀ NỘI


TRƯỜNG ĐẠI HỌC CÔNG NGHỆ




LÂM THỊ THÚY HOA

NGHIÊN CỨU, PHÁT TRIỂN VÀ ỨNG DỤNG
KIẾN TRÚC HƯỚNG MÔ HÌNH TRONG
CÔNG NGHỆ PHẦN MỀM

Ngành: Công nghệ thông tin.
Chuyên ngành: Công nghệ phần mềm.
Mã số: 60.48.10

LUẬN VĂN THẠC SĨ
NGƯỜI HƯỚNG DẪN KHOA HỌC: TS.NGÔ VĂN HIỀN








Hà Nội – 2009



MỤC LỤC

Trang
Chƣơng 1 - CÁC NGUYÊN TẮC MÔ HÌNH HÓA TRỰC QUAN VÀ CÁC
ĐẶC TRƢNG TRONG CÔNG NGHỆ HƢỚNG ĐÔ
́
I TƢỢNG 2
1.1. Các nguyên tắc mô hình hóa trực quan 2
1.2. Các đặc trƣng trong công nghệ hƣớng đối tƣợng 3
Chƣơng 2 - TỔNG QUAN VỀ KIẾN TRÚC HƢỚNG MÔ HÌNH (MDA –
MODEL DRIVEN ARCHITECTURE) 5
2.1. Tổng quan về MDA 5
2.2. Các mô hình trong MDA 6
2.2.1. Mô hình độc lập với thao tác tính toán (CIM) 6
2.2.2. Mô hình độc lập với nền công nghệ (PIM) 7
2.2.3. Mô hình theo nền công nghệ cụ thể (PSM) 8
2.3. Sƣ
̣
chuyển đổi mô hình trong MDA 9
2.3.1. Chuyển đổi từ CIM sang PIM 10
2.3.2. Chuyển đổi từ PIM sang PSM 12
2.3.3. Chuyển đổi mô hình trong một hệ thống phức tạp 16
Chƣơng 3 - PHƢƠNG PHÁP PHÂN TÍCH VÀ THIẾT KẾ HƢỚNG ĐỐI
TƢỢNG PHẦN MỀM ỨNG DỤNG THEO KIẾN TRÚC HƢỚNG MÔ
HÌNH 17
3.1. Phân tích kiến trúc hệ thống 17
3.1.1. Xác định các tầng kiến trúc của hệ thống 18
3.1.2. Xác định các cơ chế kiến trúc 19
3.1.3. Sự tham chiếu các tầng kiến trúc với MDA 22
3.2. Xác định nội dung của mô hình CIM 22
3.2.1. Xác định các trừu tƣợng hóa chính 22
3.2.2. Xác định các tác nhân và các trƣng hợp s dụng 23

3.2.3. Biều diễn mối quan hệ giữa tác nhân và trƣng hợp s dụng 26
3.2.4. Bổ sung mô tả cho trƣng hợp s dụng 28
3.3. Chuyển đổi mô hình CIM sang mô hình PIM 29


3.3.1. Chuyển đổi các thành phần của mô hình CIM thành các phần t
phân tích trong mô hình PIM 29
3.3.2. Chuyển đổi các phần t phân tích thành các phần t thiết kế trong
mô hình PIM 38
3.4. Chuyển đổi mô hình PIM sang mô hình PSM 46
3.4.1. Lƣ
̣
a cho
̣
n nền công nghê
̣
thực thi hệ thống 46
3.4.2. Các luâ
̣
t chuyê
̉
n đô
̉
i phần t thiết kế trong PIM sang PSM 48
3.4.3. Thiết kế chi tiết các trƣng hợp s dụng 49
3.4.4. Thiết kế lớp chi tiết 53
3.5. Thiết kế mô hình dữ liệu 54
Chƣơng 4 - ÁP DỤNG PHƢƠNG PHÁP PHÂN TÍCH THIẾT KẾ HƢỚNG
ĐỐI TƢỢNG THEO KIẾN TRÚC HƢỚNG MÔ HÌNH VÀO VIỆC PHÁT
TRIỂN HỆ THỐNG QUẢN LÝ TÍN DỤNG TRONG NGÂN HÀNG 57

4.1. Tìm hiểu nghiệp vụ hệ thống 57
4.2. Giới thiệu tổng quan hệ thống Quản lý tín dụng trong ngân hàng 60
4.3. Phân tích thiết kế chi tiết một trƣng hợp s dụng Quản lý Hợp đồng
vay 67
Chƣơng 5 - SO SÁNH VÀ ĐÁNH GIÁ MDA VỚI CÁC PHƢƠNG PHÁP
KHÁC 70
5.1. So sánh MDA với OO – Method 70
5.2. So sánh MDA với SOA 72
KẾT LUẬN VÀ KIẾN NGHỊ 75
DANH MỤC TÀI LIỆU THAM KHẢO 77
PHỤ LỤC 78



DANH MỤC CÁC CHỮ VIẾT TẮT
Ký hiệu
viết tắt
Viết đầy đủ
Ý nghĩa
BUS
Business System

CIM
Computation Independent
Model
      

CNTT



CSDL


DAO
Data Access Object

GDTD


J2EE
Java 2 Platform, Enterprise
Edition

MDA
Model Driven Architecture

MOF
Meta Object Facility

OMG
Object Management Group

OODBMS
Object-Oriented Database
Management System


PIM
Platform Independent Model
      


PSM
Platform Specific Model


QLTD
Qu
Qu
RDBMS
Relational Database
Management System
       

UML
Unified Modeling Language

VOPC
View Of Participating
Classes






DANH MỤC CÁC HÌNH VẼ
Trang
 3
 5
 6

 7
-  8
-  9
 10
 11
 12
 12
 13
 14
 14
 15
 15
 16
 16
 18
 19
 21
 23
 23
 24
3.7.  25
3.8. 



 25
3.9.  26
 












 
t







 





 27
 28


 29
 30

 31
 32
 33
 34
3.18. 


 35








  


  36

 37
 39


 ng 
 42













 
  45
 45
 
 46
 47
i .NET 48

 49
      
 50
  
 51
3.31. 






 52




 53

 55
3.34. 
 56
 61
               
 62
 63
 63
 64
 65
 66
 66

1
MỞ ĐẦU

               
               



Model-Driven





(CIM - Computation Independent Model),        
(PIM - Platform Independent Model) -
Platform Specific Model)





 


Luận văn bao gồm 5 chương chính như sau:
          

 (MDA  Model Driven
Architecture).
 .            
.
 

.


2
Chƣơng 1 - CÁC NGUYÊN TẮC MÔ HÌNH HÓA TRỰC QUAN VÀ
CÁC ĐẶC TRƢNG TRONG CÔNG NGHỆ HƢỚNG ĐÔ
́
I TƢỢNG
1.1. Các nguyên tắc mô hình hóa trực quan

  
 : 
 



Nguyên tắc 1: Các mô hình được tạo ra chi phối sâu sắc đến cách tiếp cận
và định hướng giải quyết một vấn đề.




t            

 





Nguyên tắc 2: Mỗi mô hình được thể hiện ở mức độ chi tiết khác nhau.


 (Use Case
View)  
 (Logical View) 
(Deployment
View)   v.v
Nguyên tắc 3: Các mô hình tốt nhất là các mô hình được liên hệ trong
thực tế.


3




 
Nguyên tắc 4: Không có một mô hình đơn lẻ nào là đầy đủ. Một hệ thống
tốt nhất phải được tiếp cận thông qua một tập các mô hình độc lập tương đối với
nhau.


         
             :  
(Use Case View), logic (Logical View), 
(Process View),  (Implementation View), 
khai (Deployment View) 


1.2. Các đặc trƣng trong công nghệ hƣớng đối tƣợng

                  
 

1.1
 Đặc trƣng 1: Tính trừu tƣợng hoá (Abstraction)



4





 Đặc trƣng 2: Tính đóng gói (Encapsulation)

.




t 




 Đặc trƣng 3: Tính mô đun hoá (Modularity)

  

, 




 Đặc trƣng 4: Tính phân cấp (Hierarchy )


 
.


5
Chƣơng 2 - TỔNG QUAN VỀ KIẾN TRÚC HƢỚNG MÔ HÌNH (MDA
– MODEL DRIVEN ARCHITECTURE)
2.1. Tổng quan về MDA


o cho



 M         (CIM - Computation
Independent Model) .
 M        (PIM - Platform Independent
Model) 
.
 M(PSM - Platform Specific Model)

 
2.1 
 

2.1MDA
  2.


6

2.2
2.2. Các mô hình trong MDA

2.2.1. Mô hình độc lập với thao tác tính toán (CIM)
  Computation Model Model)




.

.


7

2.3
2.2.2. Mô hình độc lập với nền công nghệ (PIM)
 Platform Independent Model) 



 



Ví dụ2.4 
2.
 

8

2.4- 

2.2.3. Mô hình theo nền công nghệ cụ thể (PSM)
 

, 
v.
2.5 h
2.


9

2.5- h2.
2.3. Sƣ
̣
chuyển đổi mô hình trong MDA






 

10

            

2.3.1. Chuyển đổi từ CIM sang PIM







2.6. 
Elementary Business Process (EBP)




Xây dựng CIM


 - Business Process Model (BPM)
-     


11
- 

 - Requirement Model
-       

- 


2.7. 
Xây dựng PIM

- 

- 

- 

t-Interval Archetype.
             
Archetypes.



12
2.3.2. Chuyển đổi từ PIM sang PSM
2.3.2.1. Theo vết mô hình

2.8. 
2.8 


  


ra PSM.
2.3.2.2. Quá trình biến đổi siêu mô hình – Metamodel

2.9. .

13
2.9 

M 

  

 

2.3.2.3. Quá trình biến đổi mô hình

2.10. 


.  
 
   




2.3.2.4. Ứng dụng mẫu



14

2.11. 


 


2.12. 
1.12 



15
2.3.2.5. Mô hình kết hợp


2.13. 
2.13 

2.3.2.6. Thông tin bổ sung





2.14. 



16

2.15. Stb
2.15 





2.3.3. Chuyển đổi mô hình trong một hệ thống phức tạp


.
 16 

 

thi.

2.16. 

17
Chƣơng 3 - PHƢƠNG PHÁP PHÂN TÍCH VÀ THIẾT KẾ HƢỚNG
ĐỐI TƢỢNG PHẦN MỀM ỨNG DỤNG THEO KIẾN TRÚC
HƢỚNG MÔ HÌNH
3.1. Phân tích kiến trúc hệ thống

c.
                

.
Một số mẫu kiến trúc nhƣ sau:
 (Layer)



 - - (Model - View - Controller)

- 
- 
- 
 (Pipes and Filters)

(Pippe) 

(first-in, first-out).





 
c


×