1. Trang chủ
  2. » Thể loại khác

Chuyển đổi mô hình UML sang mô hình thực thể - mối quan hệ

10 137 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 10
Dung lượng 374,05 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Phân tích và thiết kế hệ thống đóng vai trò rất quan trọng trong quá trình sản xuất phần mềm. Rất nhiều phương pháp phân tích và thiết kế được đề xuất, với mỗi phương pháp đều có một cách tiếp cận khác nhau đối với bài toán cần giải quyết. Mời các bạn cùng tham khảo.

Trang 1

T P  CHÍ KHOA H C, Đ i h c Hu , S  17, 2003Ọ ạ ọ ế ố

CHUY N Đ I MÔ HÌNH UML Ể Ổ

SANG MÔ HÌNH TH C TH  ­ M I QUAN HỰ Ể Ố Ệ

Võ Đăng Huân, Tr n Vi t Khoa ầ ệ

Tr ườ ng Đ i h c Khoa h c, Đ i h c Hu ạ ọ ọ ạ ọ ế

1. M  Đ UỞ Ầ

 Phân tích và thi t k  h  th ng đóng vai trò r t quan tr ng trong quá trình s nế ế ệ ố ấ ọ ả  

xu t ph n m m. R t nhi u phấ ầ ề ấ ề ương pháp phân tích và thi t k  đế ế ược đ  xu t, v iề ấ ớ  

m i phỗ ương pháp đ u có m t cách ti p c n khác nhau đ i v i bài toán c n gi iề ộ ế ậ ố ớ ầ ả   quy t   Trong   nh ng   năm   g n   đây   ngôn   ng   mô   hình   hóa   th ng   nh t   (Unifiedế ữ ầ ữ ố ấ   Modeling Language­UML) được xem là m t mô hình chu n trong vi c phân tích,ộ ẩ ệ   thi t k  h  th ng thông tin dế ế ệ ố ưới cách nhìn hướng đ i tố ượng. Tuy có nhi u thu n l iề ậ ợ   trong vi c phân tích và thi t k  h  th ng nh ng trong c  ch  duy trì các đ i tệ ế ế ệ ố ư ơ ế ố ượ  ng thì l i g p khó khăn b i các h  qu n tr  CSDL đ i tạ ặ ở ệ ả ị ố ượng ch a đư ược thông d ng vàụ   hoàn thi n, trong khi đó công ngh  CSDL quan h  đã đệ ệ ệ ược ki m nghi m, có nhi uể ệ ề   công c  h  tr  phát tri n và qu n tr  các  ng d ng CSDL quan h  l n. Do đó, vi cụ ỗ ợ ể ả ị ứ ụ ệ ớ ệ   chuy n đ i t  mô hình UML sang mô hình quan h  là c n thi t. Mô hình th c th  ­ể ổ ừ ệ ầ ế ự ể  

m i quan h  (entity ­ relationship) đố ệ ượ ử ục s  d ng r ng rãi trong lĩnh v c thi t k  cộ ự ế ế ơ 

s  d  li u và các lĩnh v c liên quan. Các khái ni m có c u trúc trong sáng và đ nở ữ ệ ự ệ ấ ơ  

gi n c a nó cho phép ngả ủ ườ ử ụi s  d ng có th  mô hình hóa th  gi i th c m t cách dể ế ớ ự ộ ễ  dàng. Nó được xem là công c  t t nh t đ  bi u di n mô hình quan h  m t cách tr cụ ố ấ ể ể ễ ệ ộ ự   quan. Xu t phát t  mô hình này, ta có th  xây d ng đấ ừ ể ự ược mô hình c  s  d  li u quanơ ở ữ ệ  

h  tệ ương  ng. Vì v y, trong bài  báo này chúng tôi ứ ậ đ  xu t phề ấ ương pháp chuy n đ iể ổ  

bi u đ  l p (class diagram) ­ thành ph n c t lõi c a mô hình UML ­ sang mô hìnhể ồ ớ ầ ố ủ  

th c th  ­ m i quan h ự ể ố ệ

2. PHƯƠNG PHÁP CHUY N Đ IỂ Ổ

Trang 2

Bi u đ  l p là thành ph n c t lõi c a mô hình UML, để ồ ớ ầ ố ủ ượ ử ục s  d ng đ  mô tể ả  các l p (class), các giao di n (interface), s  c ng tác và các m i quan h  gi a cácớ ệ ự ộ ố ệ ữ   thành ph n trong mô hình UML. Nó th  hi n dầ ể ệ ướ ại d ng đ  th  c u trúc tĩnh c a môồ ị ấ ủ   hình UML. Hai thành ph n chính c a bi u đ  l p là các l p và các m i quan h   ầ ủ ể ồ ớ ớ ố ệ

2.1. Chuy n đ i l pể ổ ớ

Theo ng  nghĩa c a UML, m t l p mô t  m t t p các đ i tữ ủ ộ ớ ả ộ ậ ố ượng có cùng c uấ   trúc, hành vi và các quan h  M t đ i tệ ộ ố ượng là m t th  hi n c a l p. Vì v y trongộ ể ệ ủ ớ ậ  

trường h p chúng ta ch a xem xét đ n các m i quan h  c a l p đ i v i các l p khác,ợ ư ế ố ệ ủ ớ ố ớ ớ  

m t l p s  độ ớ ẽ ược chuy n đ i thành ki u th c th  Các thu c tính đ n gi n (simpleể ố ể ự ể ộ ơ ả   attribute) c a l p đủ ớ ược chuy n đ i thành thu c tính c a ki u th c th  (trong bài báoể ổ ộ ủ ể ự ể   này chúng tôi ch a xét đ n vi c chuy n đ i các thao tác c a l p). Trong UML, m iư ế ệ ể ổ ủ ớ ỗ  

th  hi n c a m t l p để ệ ủ ộ ớ ược phân bi t b i đ nh danh đ i tệ ở ị ố ượng (object identifier).  Trong mô hình th c th  ­ m i quan h , m i th c th  phân bi t v i các th c th  khácự ể ố ệ ỗ ự ể ệ ớ ự ể  

b ng giá tr  c a thu c tính khóa. Do v y, ta b  sung vào ki u th c th  m t thu c tínhằ ị ủ ộ ậ ổ ể ự ể ộ ộ  

đ nh danh (Identity) đóng vai trò là thu c tính khóa c a ki u th c th ị ộ ủ ể ự ể

 

Đ i v i các thu c tính ph c đố ớ ộ ứ ược bi u di n trong bi u đ  l p thông qua quanể ễ ể ồ ớ  

h  k t h p (association) và quan h  k t t p (aggregation) vi c chuy n đ i chúng sệ ế ợ ệ ế ậ ệ ể ổ ẽ 

được xem xét   ph n ti p theo.ở ầ ế

2.2.  Chuy n đ i các quan hể ổ ệ

Quan h  là  k t n i ng  nghĩa gi a các l p, nó cho phép m t l p bi t v  cácệ ế ố ữ ữ ớ ộ ớ ế ề   thu c tính, thao tác và quan h  c a các l p khác. Các quan h  độ ệ ủ ớ ệ ược th  hi n trênể ệ  

bi u đ  l p. Gi a các l p có các ki u quan h  chính sau: k t h p (association), k tể ồ ớ ữ ớ ể ệ ế ợ ế  

t p (aggreation), t ng quát hóa (genaralization) và hi n th c (instantiation). Sau đây taậ ổ ệ ự   xem xét các ki u quan h    bi u đ  l p và phể ệ ở ể ồ ớ ương pháp chuy n đ i chúng sang môể ổ   hình th c th  ­ m i quan h ự ể ố ệ

Nhanvie

n

ten

ngaysin

h

tuoi()

thamnie

n()

Ngaysinh

Hình 1: Chuy n đ i  m t l p thành m t ki u th c th ể ổ ộ ớ ộ ể ự ể

ID_nhanvi en

Trang 3

Khoa

*

1

vien

hoc tai

(1,1)

(1,n)

Hình 2: Chuy n quan h  k t h p “m t ­ nhi u” sang mô hình th c th  ­ m i quan h ể ệ ế ợ ộ ề ự ể ố ệ

2.2.1. Chuy n đ i quan h  k t h p(association)ể ổ ệ ế ợ

a) Chuy n đ i các quan h  k t h p trong trể ổ ệ ế ợ ường h p t ng quátợ ổ : Quan hệ 

k t h p là m i quan h  c u trúc ch  ra các đ i tế ợ ố ệ ấ ỉ ố ượng c a m t l p có liên quan đ nủ ộ ớ ế   các đ i tố ượng c a l p khác. Khi có quan h  k t h p m i l p có th  g i thông đi pủ ớ ệ ế ợ ỗ ớ ể ở ệ  

đ n l p khác trong bi u đ  tế ớ ể ồ ương tác. Quan k t h p có th  m t chi u hay hai chi u.ế ợ ể ộ ề ề  

M t quan h  k t h p hai chi u đòi h i các đ i tộ ệ ế ợ ề ỏ ố ượng ph  thu c l n nhau, trong khiụ ộ ẫ   quan h  quan h  m t chi u đòi h i s  ph  thu c m t chi u. C  quan h  k t h pệ ệ ộ ề ỏ ự ụ ộ ộ ề ả ệ ế ợ  

m t và hai chi u đ u độ ề ề ược chuy n đ i thành các quan h  trong mô hình th c th  ­ể ổ ệ ự ể  

m i quan h  C  s  (multiplicity) c a quan h  k t h p có th  là “m t ­ m t”, “m t ­ố ệ ơ ố ủ ệ ế ợ ể ộ ộ ộ   nhi u” hay “nhi u ­ nhi u” Tu  thu c vào c  s   c a quan h  k t h p mà quan hề ề ề ỳ ộ ơ ố ủ ệ ế ợ ệ 

tương  ng   mô hình th c th  ­ m i quan h  có th  là “m t ­ m t”, “m t ­ nhi u”ứ ở ự ể ố ệ ể ộ ộ ộ ề   hay “nhi u ­ nhi u”. Mô hình th c th  ­ m i quan h  cũng h  tr  các m i quan h  đaề ề ự ể ố ệ ỗ ợ ố ệ   nguyên (n­ary) nên m i quan h  k t h p đa nguyên trong bi u đ  l p đố ệ ế ợ ể ồ ớ ược chuy nể   thành quan h  đa nguyên trong mô hình th c th  ­ m i quan h ệ ự ể ố ệ

b)   Chuy n   đ i   các   quan   h   k t   h p   có   l p   k t   h p:ể ổ ệ ế ợ ớ ế ợ   L p   k t   h pớ ế ợ   (association class) là l p đớ ược g n vào m t quan h  nh m b  sung thông tin cho quanắ ộ ệ ằ ổ  

h  đó. L p k t h p không liên quan đ n b t k  đ u cu i nào c a quan h  mà ch  liênệ ớ ế ợ ế ấ ỳ ầ ố ủ ệ ỉ   quan đ n b n thân c a quan h  đó. M t l p k t h p cũng có các thu c tính và cácế ả ủ ệ ộ ớ ế ợ ộ   thao tác nh  các l p thông thư ớ ường khác. Quan h  k t h p có l p k t h p đệ ế ợ ớ ế ợ ượ  c

Trang 4

chuy n đ i thành m t quan h  có các thu c tính (là các thu c tính c a l p k t h p)ể ổ ộ ệ ộ ộ ủ ớ ế ợ   trong mô hình th c th  ­ m i quan h  Trong ví d    hình 2, m t ngự ể ố ệ ụ ở ộ ười có th  làmể  

vi c   nhi u công ty và m t công ty có nhi u nhân viên. L p k t h p Congviec ch  raệ ở ề ộ ề ớ ế ợ ỉ  

r ng m t công ty và m t ngằ ộ ộ ườ ẽi s  xác đ nh công vi c mà ngị ệ ười đó làm trong công ty. 

L p này có thu c tính luong. Do đó, khi chuy n đ i thành quan h  Congviec trong môớ ộ ể ổ ệ   hình th c th ­ m i quan h  quan h  này cũng có thu c tính là luong.ự ể ố ệ ệ ộ

Trang 5

Hình 3: Chuy n  quan h  k t h p có l p k t h p sang mô hình th c th  ­ m i quan h ể ệ ế ợ ớ ế ợ ự ể ố ệ

Congty

thue

Nguoi

congt

ac

*

*

Congviec luong

Congty ID_Cong

ty

Cong viec

(1, n) thu e

luo ng

Nguoi ID_Nguo

i

(1,n) congt ac

c) Chuy n đ i quan h  k t t p (Aggregation)ể ổ ệ ế ậ

K t t p là m t d ng đ c bi t c a quan h  k t h p. Nó ch  ra m i quan h  “toànế ậ ộ ạ ặ ệ ủ ệ ế ợ ỉ ố ệ  

th  (whole) và b  ph n (part)” gi a các l p. Trong đó m t l p bi u di n cái l n h nể ộ ậ ữ ớ ộ ớ ể ễ ớ ơ   (t ng th ) còn l p kia bi u di n cái nh  h n (b  ph n). K t t p bi u di n quan hổ ể ớ ể ễ ỏ ơ ộ ậ ế ậ ể ễ ệ 

“has­a”, có nghĩa r ng m t đ i tằ ộ ố ượng c a l p t ng th  có nhi u đ i tủ ớ ổ ể ề ố ượng c a l pủ ớ   thành ph n. Có hai lo i quan h  k t t p. N u toàn th  và b  ph n đầ ạ ệ ế ậ ế ể ộ ậ ược hình thành 

và h y b  vào th i đi m khác nhau ta có quan h  k t t p tham chi u. N u toàn thủ ỏ ờ ể ệ ế ậ ế ế ể 

và b  ph n độ ậ ược hình thành và h y b  vào cùng th i đi m ta có quan h  k t t p h pủ ỏ ờ ể ệ ế ậ ợ   thành. 

K t t p ch  rõ s  t n t i c a các b  ph n là ph  thu c vào toàn th   Nó đế ậ ỉ ự ồ ạ ủ ộ ậ ụ ộ ể ượ  c chuy n đ i sang mô hình th c th  ­ m i quan h  dể ổ ự ể ố ệ ướ ại d ng quan h  “m t ­ nhi u”.ệ ộ ề  

Ví d    hình 4 ch  ra m i quan h  k t t p gi a hai l p Nha và Tuong. M t ngôi nhàụ ở ỉ ố ệ ế ậ ữ ớ ộ  

được c u t o nên b i nhi u b c tấ ạ ở ề ứ ường. M i quan h  k t t p này đã đố ệ ế ậ ược chuy nể   sang m i quan “m t ­ nhi u” tố ộ ề ương  ng   mô hình th c th  ­ m i quan h ứ ở ự ể ố ệ

Trang 6

Hình 4: Chuy n quan h  k t t p sang mô hình th c th  ­  m i quan h ể ệ ế ậ ự ể ố ệ

Nha

Tuong

1

Nha

ID_Dagi ac

duoctao boi

(1, n)

Tuong

ID_Die m

(1,1)

duoctao

boi

Hinh

nhh

i -s a

i -s a

i -s a

2.2.2 . Chuy n đ i quan h  t ng quát hóa (generalization)ể ổ ệ ổ

Trong UML t ng quát hóa là quan h  k  th a gi a hai l p. Nó cho phép m t l pổ ệ ế ừ ữ ớ ộ ớ  

con k  th a các thu c tính và thao tác c a l p cha. Mô hình th c th  ­ m i quan hế ừ ộ ủ ớ ự ể ố ệ 

nguyên th không tr c ti p h  tr  các khái ni m k  th a. Quan h  t ng quát hóa đự ế ỗ ợ ệ ế ừ ệ ổ ượ  c

chuy n thành quan h  is­a gi a 2 ki u th c th  bi u di n l p con và l p cha.ể ệ ữ ể ự ể ể ễ ớ ớ

Ví d     hình 5 ch  ra m i quan h  t ng quát hóa gi a các l p Hinh, Dagiac, Elip,ụ ở ỉ ố ệ ổ ữ ớ  

Hinhtron. Trong đó l p Hinh là l p cha, 3 l p còn l i là các l p con. Các quan h  kớ ớ ớ ạ ớ ệ ế 

th a này đừ ược chuy n thành các quan h  is­a tể ệ ương  ng.ứ

30

Trang 7

 

Trang 8

Diachi<dchi

>

Mang kieup

t

Diemthi<die m>

Mang

i -s a

kie upt kieupt=di

em

Diachi

i -s a

Hình 6: Chuy n quan h  hi n th c sang mô hình th c th  ­ m i quan h ể ệ ệ ự ự ể ố ệ

kieupt=dc hi

       2.2.3. Chuy n đ i quan h  hi n th c (instantiate)ể ổ ệ ệ ự

Là quan h  ch  ra m i liên h  gi a l p tham s  (parameterized class) và l pệ ỉ ố ệ ữ ớ ố ớ  

hi n th c (instantiated class) c a nó. L p tham s  có các tham s  hình th c và cácệ ự ủ ớ ố ố ứ   tham s  này dùng đ  t o ra các l p th c s  L p hi n th c đố ể ạ ớ ự ự ớ ệ ự ượ ạc t o ra t  l p thamừ ớ  

s  b ng cách thay th  tham s  hình th c đó b i các giá tr  Quan h  hi n th c cũng làố ằ ế ố ứ ở ị ệ ệ ự  

m t d ng c a quan h  k  th a. Do đó, quan h  hi n th c cũng độ ạ ủ ệ ế ừ ệ ệ ự ược chuy n đ iể ổ   thành quan h  is­a trong mô hình th c th  ­ m i quan h  ệ ự ể ố ệ

Hình 6 ch  ra m i quan h  hi n th c gi a các l p Mang, Diemthi, Diachi. L pỉ ố ệ ệ ự ữ ớ ớ   tham s  là l p m ng có tham s  hình th c là kieupt. Hai l p Diemthi và Diachi là haiố ớ ả ố ứ ớ  

l p hi n th c c a l p m ng v i các giá tr  tớ ệ ự ủ ớ ả ớ ị ương  ng v i tham s  là diem và dchi.ứ ớ ố   Các quan h  hi n th c đệ ệ ự ược chuy n đ i sang mô hình th c th  ­ m i quan h  dể ổ ự ể ố ệ ướ  i

d ng các quan h  is­a.ạ ệ

 

Trang 9

3. Các bước chuy n đ iể ổ

Quá trình chuy n đ i t  bi u đ  l p sang mô hình th c th  ­ m i quan h  để ổ ừ ể ồ ớ ự ể ố ệ ượ  c

ti n hành thông qua các bế ước sau:

1. V i m i l p trong bi u đ  l p, ta t o ra m t ki u th c th  t ng  ng. Tênớ ỗ ớ ể ồ ớ ạ ộ ể ự ể ươ ứ  

c a ki u th c th  đủ ể ự ể ượ ấc l y tr c ti p t  tên l p. Các thu c tính c a l p g c đự ế ừ ớ ộ ủ ớ ố ượ  c chuy n thành các thu c tính c a ki u (t p) th c th   B  sung thu c tính đ nh danhể ộ ủ ể ậ ự ể ổ ộ ị   vào ki u th c th  đóng vai trò là thu c tính khóa. ể ự ể ộ

2. V i m i quan h  k  th a, t o quan h  is­a gi a 2 ki u th c th  t ng  ngớ ỗ ệ ế ừ ạ ệ ữ ể ự ể ươ ứ  

v i l p cha và l p con.ớ ớ ớ

3. V i m i quan h  hi n th c, t o quan h  is­a gi a 2 ki u th c th  t ng  ngớ ỗ ệ ệ ự ạ ệ ữ ể ự ể ươ ứ  

v i l p tham s  và l p hi n th c.ớ ớ ố ớ ệ ự

4. V i m i quan h  k t t p (aggregation), t o quan h  “m t ­ nhi u”  gi a 2ớ ỗ ệ ế ậ ạ ệ ộ ề ữ  

ki u th c th  tể ự ể ương  ng v i 2 l p tham gia liên k t.ứ ớ ớ ế

5. V i m i quan h  k t h p, t o  quan  h  t ng  ng gi a các ki u th c thớ ỗ ệ ế ợ ạ ệ ươ ứ ữ ể ự ể 

bi u di n các l p tham gia liên k t. N u liên k t s  h u l p k t h p ta b  sung cácể ễ ớ ế ế ế ở ữ ớ ế ợ ổ   thu c tính cho quan h ộ ệ  

4. K T LU NẾ Ậ

Ngày nay, ph n l n các h  th ng thông tin đ u đầ ớ ệ ố ề ược phân tích, thi t k  theoế ế  

phương pháp hướng đ i tố ượng và l p trình trên các ngôn ng  l p trình hậ ữ ậ ướng đ iố  

tượng nh  Java, Cư ++  Tuy nhiên  d  li u l i thữ ệ ạ ường đượ ưc l u tr  trong các CSDLữ   quan h  Vì th , vi c chuy n đ i t  mô hình UML(mô hình phân tích thi t k  hệ ế ệ ể ổ ừ ế ế ướ  ng

đ i tố ượng thông d ng nh t) sang mô hình th c th  ­ m i quan h  là m t v n đ  r tụ ấ ự ể ố ệ ộ ấ ề ấ  

c n thi t trong quá trình phát tri n ph n m m. T  mô hình th c th  ­ m i quan hầ ế ể ầ ề ừ ự ể ố ệ 

có th  d  dàng chuy n  sang mô hình d  li u quan h  Do  s  đ n gi n c a mô hìnhể ễ ể ữ ệ ệ ự ơ ả ủ  

th c th ­ m i quan h , m t s  thành ph n và ký hi u c a UML  nh  các thao tác,ự ể ố ệ ộ ố ầ ệ ủ ư  

t m nhìn (visibility) c a các l p và m t vài chú gi i g n li n v i vai trò c a quan hầ ủ ớ ộ ả ắ ề ớ ủ ệ 

được b  qua trong quá trình chuy n đ i. Tuy nhiên, các ph n c t lõi c a bi u đ  l pỏ ể ổ ầ ố ủ ể ồ ớ   UML  đ u có th  đề ể ược bi u di n thông qua mô hình th c th  ­ m i quan h  ể ễ ự ể ố ệ

TÀI LI U THAM KH OỆ Ả

Trang 10

1 Grady Booch, James Rumbaugh, Ivar Jacobson. Unified Modeling Language,  Sybex, (1997)

2 Pierre­Alain Muller. Instant UML, Wrox Press Ltd (1997)

3 Bernd Oestereich. Developing Software with UML, Addison Wesley (2000).

4. Michael Blaha, William Premerlani. Objected­Oriented Modeling and Design for   Database Applications, Prentice Hall (1998).

5. Scott W.Ambler  Towards a UML Profile for a Relational Persistence Model,  

Cambridge University Press (2000).

TRANSLATING UML MODEL INTO ENTITY ­ RELATIONSHIP MODEL

Vo Đang Huan, Tran Viet Khoa  College of Sciences, Hue University

SUMMARY

Nowadays, the Unified Modeling Language (UML) becomes more and more popular  

in object­oriented analysis and design. On the other hand, the Entity­Relationship model is the   most   important   and  widely   used  method  for  modeling   data  and  designing  databases   The   purpose   of   this   paper   is   to   define   a   translation   of   a   UML   class   diagram   to   an   Entity   ­   Relationship model.

Ngày đăng: 22/01/2020, 04:49

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm