Kiến trúc của Hệ thống

Một phần của tài liệu giáo trình ngôn ngữ hóa thống nhất uml (Trang 154 - 157)

- 17

7.1 Kiến trúc của Hệ thống

Thiết kếchínhlàđưaracáchgiảilogicbàitoánứngdụngvàmôtảcáchhệthống thựcthinhữngnhiệmvụđãxácđịnh.Nghĩalà:

 Xây dựng các thiết kế chi tiết để mô tảcác thành phần của hệ thống ởmức caohơn,phụcvụchoviệccàiđặtởphasau.

 Đồng thờiđưa ra được kiến trúc(là trọng tâm) của hệ thốngđể đảm bảo có thểthayđổiđược,cótínhmở,dễbảotrì,thânthiện vớiNSD,v.v.

Kiến trúc hệ thốnglàcấutrúctổchứccủahệ thống.Kiếntrúcgồmnhiềubộphận

có thểởnhiều mứckhácnhau, tươngtácvớinhau thông quagiaodiện, cácmốiquan hệkếtnốivàcácràngbuộcđểkếthợpchúngthànhmộtthểthốngnhất.

Kiến trúc phần mềm là một mô tả về các hệ thống con, các thành phần và mối

quanhệgiữachúng. Cáchệthốngconvàcácthànhphầnđượcxácđịnhtheonhiềugóc nhìnkhácnhauđểchỉracácthuộctínhchứcnăngvàphichứcnăngcủahệthốngphần mềm.

Kiếntrúchệthốngđượcchiathànhhailoại: logic và vật lý.

Kiến trúc logicchỉracáclớpvàđốitượng,cácquanhệvàsựcộngtácđểhình

thành chứcnăng củahệthống.Kiến trúc logicđượcmô tảbởicácbiểu đồca sửdụng,biểuđồ lớpvàcácbiểu đồtươngtác.Kiếntrúc phổbiếnchung hiện naylàkiếntrúcbatầng:tầnggiaodiện,tầngtácnghiệpvàtầnglưutrữ.

Kiến trúc vật lý đềcậpđếnmô tảchitiếthệthống vềphươngdiệnphầncứng

vàphầnmềm củahệthống.Đồngthờinócũngmôtảcấutrúcvậtlý vàsựphụ thuộc của các mô đun cộng tác trong cài đặt những khái niệm đã được định nghĩatrongkiếntrúclogic. Kiếntrúcvậtlýcủahệthốngliênquannhiềuđến cài đặt, do vậy, nó được mô hình hoá trong các biểu đồ thành phần (Component Diagram)và biểu đồ triển khai(Deployment Diagram).

- 136 -

Kiếntrúcbatầng

Nhưởphầnphân tíchđã nêu:Kiến trúc chung cho cáchệthống phầnmềmhiện làkiếntrúcbatầng.

1. Tầng trình diễn (Presentation): Biểudiễn vàgiới thiệu các thànhphần củahệ

thống thông qua các giao diện đồ hoạ, các Window, các hộp thoại, v.v. Các thực thể trong hệ thống được thể hiện sao cho vừa thân thiện với người sử dụng và phù hợp với bài toán ứng dụng. Ví dụ, cửa sổ “Bán hàng” của hệ thống bán hàng được thiết kế ở tầng trình diễn như ởhình 6-9 thể hiện giao diệngiữangườibánvàhệthống.

2. Tầng logic ứng dụng (Application Logic): Mô tả các đối tượng thực thi các nhiệm vụ vàcácquiluậtđiềuhànhcáctiếntrình củahệthống.Hệ thốngphần mềmcóhailoạiđốitượngcơbản:

Những đối tượng nghiệp vụ (Domain Object): là những đối tượng

đạibiểu cho cáckháiniệmcủamiền ứngdụng. Vídụ,tronghệthốngbán hàng, cácđốitượng:PhienBanHang , :ThanhToan, v.v.lànhữngđốitượng thựchiệncácnhiệmvụcủabàitoánứngdụng.

Những đối tượng dịch vụ (Service Object):nhữngđối tượngkhông

nằmtrongphạmvibàitoánnhưngcungcấpcácdịchvụchohệthốngnhư: làm môi giới, tương tác với CSDL, trao đổi thông tin, lập báo cáo, đảm bảoántoán,anninhdữliệu,v.v.

Tầng haiđược thểhiện ởcácbiểu đồ: lớp, trạngthái, cộng tác, hành độngvà biểuđồtriểnkhai.

3. Tầng lưu trữ (Storage): thể hiện cơ chế lưu trữ đảm bảo nhất quán và bền vững dữ liệu. Hiệnnay có hai mô hình CSDL chính đang được sử dụng phổ biến là: mô hình dữ liệu quan hệ và mô hình dữ liệu hướng đối tượng. Đểlưu trữdữliệuchohệ thống,taphảilựachọnhệquảntrịCSDLvànhữngphương pháp biến đổi dữ liệu, biến đổi các câu truy vấn cho phù hợp với công nghệ hiệnđại vàvớiphạmviứngdụng. Kiếntrúcsưđối tượngphảilựachọncông nghệCSDLthíchhợpđểpháttriểnhệthống.Khiphântích,thiếtkếhướngđối tượng vànếulựa chọnmô hình dữliệu quanhệ thìngười phát triển hệthống phải quan tâm đếnnhững vấn đềvề tích hợpdữ liệu để đảm chophép người sửdụng truynhậpđượctớitấtcảcácdữ liệutừnhiềumôhình khácnhaumột cáchtrongsuốt.

Quá trình phát triển phần mềm cũng giống như quá trình học và nhận thức của con người, đólà quá trình lặp,tích luỹđể phát triển liên tục. Vì vậykiến trúc của hệ thống cũng phải được xây dựng sao cho phù hợp với sự phát triển và khả năng mở rộngcủahệthống.

Trongtriểnkhaicàiđặt,kiếntrúcbatầngthườngđượctổchứctheonhiềuphương ánkhácnhau.Cóthểthựchiện:

- 137 -

2.Tầngtrìnhdiễnvàtầnglogicứngdụngtrênmáykhách (Client Computer),tầng lưutrữtrênSever(hệthốngloạivừa).

3. Tầng trình diễn trên máyngười sử dụng, tầng logic ứng dụng trên máy trạm phục vụ ứngdụng (Application Server), còn tầng lưutrữ tổ chứcở trạmphục vụdữliệu (DataServer)(nhữnghệ thốnglớn).

Hiện nay có những ngôn ngữ lập trình hướng đối tượng như Java và các công nghệCSDLhướngđốitượngđãsẵn sànghỗtrợcàiđặtphântántheocácphươngán2. và3.

Đểthiếtkếđượchệthốngthìtaphảichianóthành cáchệthốngcongọilàcácgói (packages). Các package tronghệthống có mứcđộ phụthuộc vào nhau.Dovậy, một kiếntrúcchitiếtchung chohệ thốngtrongđóbiểu diễnđượccảquan hệphụthuộcsẽ đượcxâydựngtổngquátnhưsau:

Trìnhdiễn

Miềnứngdụng

Giaodiệnvới

CSDLquanhệ Traođổitin

Giaodiệnvới

CSDLđốitượng Lậpbáocáo

Cáckhungứngdụng &sựhỗ trợ củacáchệthốngthưviện

CSDL quanhệ

CSDLđối tượng

Hình7-1 Kiếntrúcchungcủahệthống

Một số điểm cần lưu ý trong kiến trúc trên

1. CácgóigiaodiệnCSDLquanhệvàCSDLđốitượngcungcấpcáccơchếnhất quánđểtraođổivớicácCSDLkhác.

-138-

2. Cácgóidịchvụhướngđốitượngởmứccaonhư:lậpbáocáo(reporting),giao diện với CSDL (Database Interfaces), đảm bảo an ninh (security), trao đổi (Communication), v.v. được phát triển theo kỹ nghệ hướng đối tượng và thườngđượccácnhàpháttriểnphầnmềmhệthốngcungcấp.

Ngược lại, ở dịch vụ mức thấp như các chức năng xử lý tệp, Windows, hội thoại, v.v. thường được cung cấp bởi thư viện chuẩn của ngôn ngữ lập trình hoặcđượcmuatrựctiếpcủacáchãngsảnxuấtphầnmềm.

3. Cáckhung ứngdụng (Application Frameworks and Support Libraries)hỗ trợ để tạoraWindows, địnhnghĩa cácphầntửhợp tác ứngdụng,truycập tớitệp vàCSDL,traođổigiữacáctiếntrình,v.v.

4. QuanhệphụthuộccủacácgóiAvàgóiBchỉrarằnggóiAbiếtrõ(dovậysử dụngđược)vềgóiB.KhiAkhông cóquanhệphụthuộcvàoBthìtừAkhông thểquychiếu (tham khảo) đếncác lớp, thànhphần, giao diện,hàm,hoặc các dịchvụcủaBđược.

Tổ chức các Packages và mối quan hệ giữa chúng

1.Hướngdẫnđểnhómcácphầntửthànhmột package

 Nhómnhữngphần tửcócác dịchvụchung, có quanhệhợptác, cố kếttương hỗcaothànhmộtgói.

 Ởcùng mứctrừu tượngthìmỗi góiđược xemnhư mộtbộ phận,gồmmột số phầntửcócấukếtvàliênhệchặtchẽvớinhau.

 Ngượclại,cácphầntửởhaigóikhácnhausẽliênkếtvớinhauởmứcthấp. 2.Khảnăngquansátgiữacáclớpcủacácgói

 Gói trình diễn (Presentation Package)có thểnhìn thấyđược nhiều lớp trong miềnứngdụng.

 Góimiềnứngdụng(Domain Package)cóthểnhìnđượcmộtsốlớpđốitượng trongmỗigóidịchvụcụthể.

Một phần của tài liệu giáo trình ngôn ngữ hóa thống nhất uml (Trang 154 - 157)

Tải bản đầy đủ (DOCX)

(195 trang)
w