1. Trang chủ
  2. » Luận Văn - Báo Cáo

tìm hiểu được các thành phần chính trong ngôn ngữ UML và một số ứng dụng của nó.

38 1,1K 2
Tài liệu đã được kiểm tra trùng lặp

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 38
Dung lượng 0,95 MB

Nội dung

Ngày nay, công nghệ thông tin đã và đang đóng vai trò quan trọng trong đời sống kinh tế, xã hội của nhiều quốc gia trên thế giới

Trang 1

MỤC LỤC

Trang

Lời Mở Đầu 3

I Quá trình hình thành và nguyên nhân ra đời 3

I.1 Quá trình hình thành UML 3

I.2 Nguyên nhân ra đời 4

II Khái quát về UML 4

II.1 Giới thiệu UML 4

II.2 Mô hình khái niệm của UML 5

II.2.1 Phần tử mô hình trong UML 5

II.2.2 Các quan hệ trong UML 8

II.2.3 Kiểu dữ liệu 10

II.3 Biểu đồ UML 10

II.3.1 Biểu đồ trường hợp sử dụng (Use case _ UC) 10

II.3.2 Biểu đồ trình tự (sequence) 11

II.3.3 Biểu đồ cộng tác (collaboration) 12

II.3.4 Biểu đồ lớp (class) 13

II.3.5 Biểu đồ chuyển trạng thái (State transition) 14

II.3.6 Biểu đồ thành phần (component) 15

II.3.7 Biểu đồ triển khai (deployment) 16

II.3.8 Biểu đồ đối tượng 17

II.3.9 Biểu đồ hoạt động 18

II.4 Kiến trúc hệ thống 18

II.4.1 Khung nhìn UC 19

II.4.2 Khung nhìn thiết kế 19

II.4.3 Khung nhìn cài đặt 19

II.4.4 Khung nhìn triển khai 20

II.4.5 Khung nhìn tiến trình 20

III Tiến trình phát triển ứng dụng với UML 20

III.1Các kỹ thuật mô hình hoá hợp nhất (Unified modeling) 20

III.1.1 Xây dựng lược đồ Use case 20

Trang 2

III.1.3 Xây dựng lược đồ tuần tự 22

III.1.4 Xây dựng lược đồ cộng tác 23

III.1.5 Xây dựng lược đồ hoạt động 23

III.1.6 Xây dựng lược đồ trạng thái 24

III.1.7 Xây dựng lược đồ thành phần 25

III.2 Công cụ (case tool) mô hình hoá hệ thống Rational Rose 25

IV Xây dựng hệ thống quản lý thư viện trên Rational Rose 27

IV.1 Hệ thống quản lý thư viện 27

IV.1.1 Phát biểu bài toán 27

IV.1.2 Phân tích bài toán 27

IV.2 Xây dưng mô hình bài toán trên Rational Rose 28

IV.2.1 Lược đồ use case mức tổng thể 28

IV.2.2 Lược đồ lớp mức thô 29

IV.2.3 Lược đồ use case chi tiết và các lược đồ tuần tự mô tả các use case 30

Kết luận 37

Tài liệu tham khảo 38

Trang 3

Một trong những lĩnh vực quan trọng và có ảnh hưởng rất lớn đến sự thành công củaviệc phát triển phần mềm là việc mô hình hoá phần mềm Có rất nhiều ngôn ngữ môhình hoá hỗ trợ cho việc mô hình hoá phần mềm, nhưng nổi bật là ngôn ngữ UML(Unified Modeling Language) từ hãng phần mềm Rational UML không ngừng đượcphát triển và ngày càng được sử dụng rộng rãi trên thế giới, đa số các công cụ hỗ trợphát triển phần mềm hiện nay đều có hỗ trợ ngôn ngữ UML Ở đây em đã nghiên cứu

đề tài “nghiên cứu ngôn ngữ UML và ứng dụng ” Với sự hướng dẫn tận tình của côgiáo Tống Minh Ngọc cùng với sự tìm tòi nghiên cứu của bản thân em đã thu đượcmột số kết quả Đó là tìm hiểu được các thành phần chính trong ngôn ngữ UML vàmột số ứng dụng của nó Tuy nhiên thời gian nghiên cứu còn hạn hẹp và sự hiểu biếtcòn hạn chế của bản thân nên đề tài còn nhiều thiếu sót, em rất kính mong được sựthông cảm và tận tình chỉ bảo của thầy cô

I Quá trình hình thành và nguyên nhân ra đời

I.1 Quá trình hình thành UML

Khái niệm hướng đối tượng hình thành từ ngôn ngữ lập trình Simula, nhưng nó trởnên quen thuộc khi xuất hiện ngôn ngữ C++ và Small Talk vào cuối những năm 80 củathế kỷ XX Khi các ngôn ngữ hướng đối tượng được sử dụng rộng rãi, nhu cầu cóphương pháp phát triển phần mềm hướng đối tượng trở nên cấp bách Vào đầu nhữngnăm 90 của thế kỷ XX đã xuất hiện các phương pháp hướng đối tượng sau đây:phương pháp Booch, OMT (object modeling Technique), OOSF …Mỗi phương pháp

có ký pháp, tiến trình và công cụ hỗ trợ riêng Chúng đều có ưu điểm và nhược điểmriêng Người sử dụng rất khó khăn để chọn cho mình một phương pháp phù hợp Donhận biết được các vấn đề này, vào năm 1994 các tác giả của các phương pháp này đãhợp tác nhằm tạo ra phương pháp mới Bắt đầu là sự thống nhất phương pháp Boochvới OMT-2 của Rumbaugh để hình thành Unified Method 0.8 tại Rational RoseCorporation Tháng 6 năm 1995, IvarJacobson (tác giả của OOSE / Objectory) ra nhậpvới họ Từ thời điềm này nhóm phát triển phương pháp hướng đối tượng nói trên chorằng nhiệm vụ của họ là tạo ra ngôn ngữ mô hình hoá thống nhất cho cộng đồng hướngđối tượng Do vậy họ đã đổi tên công việc của họ thành Unified Modeling Language_UML (ngôn ngữ mô hình hoá thống nhất) Booch, Rumbaugh và Jacobson đã đưa ranhiều phiên bản UML, trong đó phiên bản UML 0.9 xuất hiện năm 1995, UML 1.0xuất hiện vào năm 1997 Phần lớp UML được xây dựng trên nền tảng của các phươngpháp Booch, OMT va OOSE, nhưng UML còn bao gồm cả các khái niệm có nguồngốc từ các phương pháp khác nhau như David Harel, Gamma-Helm-Johnson-Vlissides

Trang 4

và Fusion UML còn là kết quả của sự đóng góp từ các hãng lớn như DEC, HP, IBM

… Phiên bản UML 1.1 đã được đệ trình lên OMG và còn giờ đây có nhiều phiên bảnkhác như UML 1.3, UML 1.4 …

Hiện nay tồn tại rất nhiều phương pháp phân tích thiết kế hướng đối tượng như làOOA (Object Oriented Analys) của Booch, OMT, (Object Modeling Technique) củaDumbaugh… Mỗi một phương pháp tồn tại trong nó các đặc điểm mạnh và điểm yếu

Do vậy bản thân mỗi phương pháp không đáp ứng được một cách đầy đủ đòi hỏi củangười sử dụng Do đó việc ứng dụng 1 ngôn ngữ mô hình hoá chuẩn, tồn tại trong suốtvòng đời phát triển là rất cần thiết UML là ngôn ngữ mô hình hoá hợp nhất, được xemnhư công cụ đồ học nhằm biểu diễn trực quan, đặc tả, xây dựng và lập tài liệu cácthành phần trong hệ thống Nó cung cấp một cách thức chuẩn để tạo ra một sự mô tả

hệ thống, đề cập đến những cái mang tính quan niệm như các tiến trình kinh doanh vàchức năng hệ thống, đồng thời nó cũng đề cập đến những thứ cụ thể như là các lớpđược viết trong một ngôn ngữ lập trình … UML được tạo ra là sự tất yếu khách quan,

nó đáp ứng một cách khá đầy đủ các yêu cầu từ phía người dùng

II Khái quát về UML

UML là ngôn ngữ mô hình hoá , trước hết nó là mô tả ký pháp thống nhất ngữnghĩa và các định nghĩa về metamodel(mô tả và định nghĩa chính ngôn ngữ mô hìnhhoá), nó không mô tả về phương pháp phát triển UML được sử dụng để hiển thị, đặc

tả, xây dựng và làm tài liệu các vật phẩm của phân tích hình thức và thiết kế trong quátrình xây dựng hệ thống phần mềm theo hướng đối tượng UML được sử dụng chomọi tiến trình phát triển phần mềm, xuyên suốt vòng đời phát triển độc lập với cáccông nghệ cài đặt hệ thống

II.1 Giới thiệu UML

UML là ngôn ngữ chuẩn để viết kế hoạch chi tiết phần mềm Nó phù hợp choviệc mô hình hoá các hệ thống như: hệ thống thông tin doanh nghiệp, các ứng dụngphân tán trên nền web, … nó không khó hiểu và dễ sử dụng UML là ngôn ngữ môhình được cả con người và máy sử dụng Cũng như mọi ngôn ngữ mô hình hoá khác,UML có kí pháp và tập các luật sử dụng nó Các luật bao gồm cú pháp, ngữ nghĩa vàluật hình thành câu(pragmatic) Để sử dụng UML có hiệu quả cần nắm được ba nộidung chính:

 Các phần tử cơ bản của mô hình trong UML

 Các quy định liên kết các phần tử mô hình

 Một số cơ chế chung áp dụng cho ngôn ngữ này

UML là ngôn ngữ và nó chỉ là một phần của tiến trình phát triển phần mềm, độc lậpvới tiến trình Tuy nhiên UML rất phù hợp với các tiến trình hướng trường hợp sửdụng (Use case - UC)

-UML là ngôn ngữ:

Ngôn ngữ phải có từ vựng và quy tắc tổ hợp các từ vựng để giao tiếp Ngôn ngữ

mô hình là ngôn ngữ có từ vựng và quy tắc tập trung vào biểu diễn về mặt vật lý vàkhái niệm của hệ thống UML là ngôn ngữ chuẩn công nghiệp để lập kế hoạch chi tiết

Trang 5

phần mềm Từ vựng và quy tắc ngôn ngữ UML cho ta cách thức xây dựng mô hìnhnào cần phải được lập và khi nào lập chúng.

-UML là ngôn ngữ hiển thị:

UML giúp ta xây dựng mô hình để dễ dàng giao tiếp Một số công việc phù hợpvới mô hình hoá bằng văn bản, một số công việc khác lại phù hợp với mô hình hoábằng đồ hoạ UML là ngôn ngữ đồ hoạ Với nhiều hệ thống, mô hình trong ngôn ngữ

đồ hoạ dễ hiểu hơn so với ngôn ngữ lập trình Sau mỗi biểu tượng đồ hoạ của UML làngữ nghĩa Nên khi xây dựng mô hình trong UML thì người phát triển khác hay cáccông cụ hỗ trợ mô hình hoá có thể hiểu mô hình một cách rõ ràng

-UML là ngôn ngữ đặc tả:

Đặc tả là mô tả rõ ràng những điểm mấu chốt của vấn đề UML cho phép mô tả

mô hình chính xác, không nhập nhằng và hoàn thiện UML hướng tới đặc tả thiết kế,phân tích và quyết định cài đặt trong quá trình phát triển và triển khai hệ thống phầnmềm

-UML là ngôn ngữ để xây dựng:

Mô hình của UML có thể kết nối trực tiếp với các ngôn ngữ lập trình khác nhau

Có nghĩa là có thể ánh xạ mô hình trong UML tới các ngôn ngữ lập trình khác nhaunhư Java, C++ hay cá bảng CSDL quan hệ, CSDL hướng đối tượng Ánh xạ này chokhả năng biến đổi thuận từ UML sang ngôn ngữ lập trình và cho khả năng biến đổingược lại Có nghĩa là có thể làm việc với văn bản hay đồ hoạ một cách nhất quán

-UML là ngôn ngữ làm tài liệu:

UML hướng tới làm tài liệu kiến trúc hệ thống và các chi tiết của nó UML chokhả năng biểu diễn yêu cầu, thử nghiệm, mô hình hoá các hoạt động lập kế hoạch vàquản lý sản phẩm

 UML cho biết giới hạn của hệ thống và các chức năng chính của nó thông qua

UC và tác nhân

 Trong UML ,các UC được mô tả bằng biểu đồ logic

 Biểu diễn cấu trúc tĩnh của hệ thống nhờ biểu đồ lớp

 Mô hình hoá các hành vi đối tượng bằng biểu đồ chuyển trạng thái

 Phản ánh kiến trúc cài đặt vật lý bằng biểu đồ thành phần và biểu đồ triển khai

 Mở rộng các chức năng bằng Stereotypes

II.2 Mô hình khái niệm của UML

Để hiểu được UML ta cần được mô hình khái niệm của ngôn ngữ Nó gồm ba vấn

đề chính sau:

 Các phần tử cơ bản để xây dựng mô hình

 Quy tắc liên kết các phần tử mô hình

 Một số cơ chế chung để sử dụng ngôn ngữ

II.2.1 Phần tử mô hình trong UML

Các khối để hình thành mô hình UML gồm ba loại sau: phần tử, quan hệ và biểu

đồ Phần tử là trừu tượng căn bản trong mô hình; các quan hệ gắn với các phần tử nàylại với nhau; còn biểu đồ nhóm tập hợp các phần tử

Trong UML có bốn loại phần tử mô hình: cấu trúc, hành vi, nhóm và chú giải.Các phần tử này là các khối để xây dựng hướng đối tượng cơ bản của UML

-Phần tử cấu trúc:

Trang 6

Phần tử cấu trúc là các danh từ trong mô hình UML Chúng là bộ phận tĩnh của

mô hình để biểu diễn các thành phần khái niệm hay vật lý Có bảng loại phần tử cấutrúc: lớp, giao diện, phần tử cộng tác, trường hợp sử dụng, lớp tích cực, thành phần,nút

 Lớp: Mô tả các đối tượng cùng chung thuộc tính, thao tác, quan hệ và ngữnghĩa Một lớp cài đặt một hay nhiều ghép nối Lớp biểu diễn bằng hình chữnhật, gồm tên, thuộc tính và thao tác

tai khoan

so tai khoan pin

so du mo() rut tien() tru so du() kiem tra so du()

Hình 1.1 Lớp

 Giao diện: Là tập hợp các thao tác làm dịch vụ của lớp hay thành phần Giaodiện mô tả hành vi thấy được từ ngoài của thành phần Giao diện biểu diễn toàn

bộ hay một hành vi của lớp Giao diện định nghĩa tập đặc tính thao tác

 Phần tử cộng tác: Mô tả ngữ cảnh của tương tác Nó thể hiện một giải pháp thihành bên trong hệ thống, bao gồm các lớp, quan hệ và tương tác giữa chúng đểđạt được một chức năng mong đợi của UC

 Trường hợp sử dụng (Use case): mô tả tập trình tự các hành động mà hệ thống

sẽ thực hiện để đạt được một kết quả cho tác nhân nào đó Tác nhân là những gibên ngoài tương tác với hệ thống Tập hợp các UC của hệ thống sẽ hình thànhcác trường hợp mà hệ thống được sử dụng Sử dụng UC để cấu trúc các phần tử

có tính hành vi trong mô hình Nó được hiện thực hoá phần tử cộng tác

Kí pháp đồ hoạ của UC:

 Thành phần: Thành phần biểu diễn vật lý mã nguồn các tệp nhị phân trong quátrình phát triển hệ thống

Trang 7

Hình1.6 Thành phần

 Nút (Mode): Nút là thành phần biểu hiện vật lý, tồn tại khi chương trình chạy

và biểu diễn các tài nguyên tính toán Có thể đặt tập các thành phần trên nút vàchuyển từ nút này sang nút khác Nút có thể là máy tính, thiết bị phần cứng

Kí pháp đồ hoạ:

may chu

-Phần tử hành vi:

Phần tử hành vi là bộ phận động của mô hình UML Chúng là các động từ của môhình, biểu diễn hành vi theo thời gian và không gian Có hai loại chính là: tương tác vàtrạng thái:

 Tương tác: tương tác là hành vi bao gồm tập các thông điệp trao đổi giữa cácđối tượng trong ngữ cảnh cụ thể để thực hiện mục đích cụ thể

Biểu diễn đồ hoạ của thông điệp được thể hiện trên hình sau, bao gồm mũi tên và tên thao tác của nó

 Máy trạng thái: máy trạng thái là hành vi chỉ ra trật tự các trạng thái mà đốitượng hay tương tác sẽ đi qua để đáp ứng sự kiện Hành vi của lớp hay cộng táccủa lớp có thể được xác định bằng máy trạng thái Máy này kích hoạt nhiềuphần tử, bao gồm trạng thái, chuyển tiến, sự kiện và hoạt động

-Phần tử nhóm:

Phần tử nhóm là bộ phận tổ chức của mô hình UML, chỉ có một phần tử thuộcnhóm này có tên là gói (pakage) Gọi là cơ chế đa năng để tổ chức các phần tử vàonhóm Các phần tử cấu trúc, hành vi và ngay cả phần tử nhóm có thể cho vào gói.Không giống thành phần (component), phần tử nhóm hoàn toàn là khái niệm, chúngchỉ tồn tại vào thời điểm phát triển hệ thống chứ không tồn tại vào thời gian chạychương trình Gói giúp ta quan sát hệ thống ở mức tổng quát hơn

Kí pháp đồ hoạ của nhóm:

Trang 8

cac luat thuong mai

day la ghi chu

-Chú thích (annotational):

dụng để mô tả các phần tử khác hay mô hình

day la chu thich

Hình1.11 Chú thích

II.2.2 Các quan hệ trong UML

Quan hệ trong UML đại diện cho sự liên hệ giữa các sự vật trong thế giới thực.Quan hệ là sự kết nối giữa hai thành phần trong hệ thống Có bốn loại quan hệ trongUML bao gồm:

Phụ thuộc là quan hệ ngữ nghĩa giữa hai phần tử Trong đó thay đổi phần tử độc

lập sẽ tác động đến ngữ nghĩa của phần tử phụ thuộc

Kí pháp đồ hoạ của nó thể hiện trên hình sau:

Kí pháp đồ hoạ của nó thể hiện trên hình 2.2, chúng có thể chứa tên, nhiệm vụ và tính

nhiều (Multiplicity)

Trang 9

-Khái quát hoá (generalization)

Khái quát hoá là quan hệ đặc biệt hoá mà trong đó đối tượng cụ thể kế thừa cácthuộc tính và phương pháp của đối tượng tổng quát Kí pháp đồ hoạ của khái quát hoáthể hiện trên hình 2.4

Hình 2.4.Khái quát hoá

-Hiện thực hoá (realization)

Là quan hệ ngữ nghĩa giữa giao diện và lớp (hay thành phần) hiện thực lớp; giữa

UC và hợp tác hiện thực UC Biểu diễn đồ hoạ của nó được mô tả trên hình 2.5

+employer

* Company

Vehicles

Car Bicycle

Generalization

Trang 10

II.2.3 Kiểu dữ liệu

Kiểu dữ liệu không phải là phần tử mô hình trong UML Kiểu dữ liệu cơ sở làkiểu dữ liệu không có cấu trúc UML có các kiểu dữ liệu sau:

 Boolean: là kiểu đếm với hai giá trị True và False

 Biểu thức (expression): là xâu kí tự có cú pháp

 Tính nhiều (multiplicity): là tập không rỗng của các số nguyên dương và kí hiệu

* (để biểu thị tính nhiều vô hạn )

 Tên (name): là xâu kí tự cho khả năng đặc tả phần tử

 Số nguyên (integer): là kiểu cơ bản và là phần tử của tập vô hạn các số nguyên

âm và dương

 Xâu (string): là trật tự của các kí tự ,được sử dụng làm tên

 Thời gian (time): xâu kí tự biểu diễn giá trị tuyệt đối hay khoảng tương đối

 Không lí giải (uninterpreted): là cái gì đó mà ý nghĩa của nó phụ thuộc vào lĩnhvực

II.3 Biểu đồ UML

Biểu đồ là biểu diễn đồ hoạ tập các phần tử mô hình, vẽ biểu đồ để biểu diễn hệthống đang xây dựng dưói các góc độ quan sát khác nhau UML cho khả năng xâydựng các loại biểu đồ sau:

 Biểu đồ triển khai

 Biểu đồ chuyển trạng thái

 Biểu đồ đối tượng

 Biểu đồ hoạt động

II.3.1 Biểu đồ trường hợp sử dụng (Use case _ UC)

Biểu đồ này chỉ ra tương tác giữa các UC và tác nhân UC biểu diễn các chức năngcủa hệ thống Tác nhân là con người hay hệ thống khác cung cấp hay thu nhận thôngtin từ hệ thống đang được xây dựng Biểu đồ UC tập trung vào quan sát trạng thái tĩnhcủa các UC trong hệ thống Nó rất quan trọng trong việc tổ chức và mô hình hoá hệthống Vì UC biểu diễn yêu cầu hệ thống từ góc độ người dùng, cho nên UC là chứcnăng mà hệ thống phải có Biểu đồ này chỉ ra tác nhân nào khởi động UC và khi nàotác nhân nhận thông tin từ hệ thống

Ví dụ: Biểu đồ UC của ATM, chỉ ra tương tác của UC và tác nhân của hệ thống rúttiền Trong đó:

Trang 11

nhan vien ngan hang thay doi pin

Hình 2.3 Biểu đồ UC của ATM

 Khách hàng (tác nhân) : có khả năng khởi động một số UC như rút tiền, gửutiền, chuyển tiền, xem số dư tài khoản, thay đổi số căn cước cá nhân và thanhtoán

 Nhân viên ngân hàng (tác nhân) : có khả năng khởi động UC thay đổi số căncước cá nhân

 Trường hợp sử dụng thanh toán có có mũi tên đi đến tác nhân hệ thống tín dụngcho biết UC trả lại thông tin cho tác nhân

II.3.2 Biểu đồ trình tự (sequence)

Biểu đồ nà chỉ ra luồng chức năng xuyên qua các UC Nó là biểu đồ mô tả tương

tác giữa các đối tượng và tập trung vào mô tả trật tự các thông điệp theo thời gian Biểu đồ trình tự trên đã mô tả toàn bộ luồng xử lý cho UC rút tiền thông qua ví dụtrường hợp ông Văn rút 100.000đ Khách hàng có thể thấy được tiến trình tác nghiệp

cụ thể của hệ thống qua biểu đồ Phân tích viên thấy được luồng tiến trình, người pháttriển thấy được các đối tượng cần xây dựng và các thao tác cho các đối tượng này, kỹ

sư kiểm tra chất lượng có thể thấy chi tiết của tiến trình để xây dựng quy trình thửnghiệm, kiểm tra Nói chung biểu đồ này có ích với mọi người tham gia dự án

Ví dụ về biểu đồ trình tự của hệ thống ATM được thể hiện trên hình 2.6

Trang 12

17: day the ra

VAN :

khachhang

may doc the man hinh

ATM tai khoan ong VAN may tra tien mat

1: chap nhan the

2: doc so the 3: khoi dong man hinh

4: mo tai khoan 5: yeu cau pin

12: rut tien (100000d)

13: kiem tra tai khoan 14: giam tai khoan (100000d)

15: tra tien (100000d)

16: tra bien nhan

Hình 2.6.Biểu đồ trình tự của hệ thống ATM

II.3.3 Biểu đồ cộng tác (collaboration)

Biểu đồ này chỉ ra các thông tin như biểu đồ trình tự nhưng theo cách khác, nó tậptrung vào tổ chức cấu trúc của các đối tượng gửi và nhận thông điệp Biểu đồ cộng tác

và biểu đồ trình tự thuộc loại biểu đồ tương tác và có thể biến đổi qua lại Trong biểu

đồ cộng tác, đối tượng đặt trong hình chữ nhật, tác nhân là người hình cây Trong khibiểu đồ trình tự biểu diễn tương tác đối tượng và tác nhân theo thời gian thì biểu đồcộng tác không quan tâm đến thời gian

Ví dụ biểu đồ cộng tác ông Văn rút 100.000 đ

Trang 13

may doc

the

man hinh ATM

tai khoan ong VAN

may tra tien mat

12: rut tien (100000d)

13: kiem tra tai khoan 14: giam tai khoan (100000d)

15: tra tien (100000d) 16: tra bien nhan

3: khoi dong man hinh

6: nhap pin (1234) 9: chon giao dich rut tien (100000d) 11: nhap so tien (100000d)

1: chap nhan the

Hình 2.7.Sơ đồ cộng tác ông Văn rút 100.000 đ

Tuy cùng chỉ ra các thông tin như biểu đồ trình tự, nhưng biểu đồ cộng tác sử dụng vìmục đích khác Kỹ sư kiểm tra chất lượng và kiến trúc sư hệ thống thấy được việcphân bổ tiến trình giữa các đối tượng thông qua biểu đồ này

II.3.4 Biểu đồ lớp (class)

Biểu đồ chỉ ra tương tác giữa các lớp trong hệ thống Các lớp được xem như kếhoạch chi tiết của các đối tượng Người phát triển sử dụng biểu đồ lớp để xây dựng cáclớp Các công cụ phần mềm như Rose phát sinh mã trình xương sống cho các lớp, sau

đó người phát triển phải chi tiết hoá nó bằng ngôn ngữ lập trình Kiến trúc sư quan sátthiết kế hệ thống thông qua biểu đồ lớp

Trang 14

tai khoan

so tai khoan pin

so du mo() rut tien() kiem tra so du()

may doc the

sothe chap nhan the() tra the()

doc the()

man hinh ATM

nhap dau vao() dau nhac()

may tra tien

so du tai khoan tra tien()

Hình 2.8.Biểu đồ lớp của UC rút tiền

Biểu đồ này chỉ quan hệ giữa các lớp hình thành nên UC rút tiền Nó gồm bốn lớp:máy đọc thẻ, tài khoản, màn hình ATM và máy trả tiền Mỗi lớp trong biểu đồ đượcbiểu diễn bằng hình chữ nhật chia làm ba phần:

 Tên lớp (ví dụ trên lớp tài khoản )

 Thuộc tính (lớp tài khoản chứa ba thuộc tính:số tài khoản, số căn cước cá PIN và cân đối tài khoản )

nhân- Thao tác (ví dụ lớp tài khoản có bốn thao tác: mở tài khoản, rút tiền, trừ tiềntrong tài khoản và kiểm tra số tiền trong tài khoản )

Đường nối giữa các phần tử biểu đồ lớp là quan hệ giao tiếp giữa chúng Phía tráimột số thuộc tính và thao tác có gắn biểu tượng khoá, có nghĩa là đó là các thuộc tính

và thao tác riêng

II.3.5 Biểu đồ chuyển trạng thái (State transition)

Biểu đồ này mô tả vòng đời của đối tượng, từ khi nó được sinh ra cho đến khi bị

phá huỷ Biểu đồ chuyển trạng thái cung cấp cách thức mô hình hoá các trạng tháikhác nhau của đối tượng Nó được sử dụng để mô hình hoá các hành vi động của hệthống

Trang 15

rut qua

dong kiem tra so du[ so du <0 va > 30 ngay ]

rut tien[ so du <0 ]

khach hang yeu cau dong tai khoan

Biểu đồ chuyển trạng thái chỉ ra hành vi của đối tượng Ví dụ đối tượng tài khoản

trong ngân hàng có thể có một vài trạng thái như: mở, đóng hay rút quá mức Tàikhoản sẽ ứng xử khác nhau với mỗi trạng thái khác nhau

Biểu đồ ở hình 2.9 cho thấy các trạng thái và quá trình chuyển trạng thái của tàikhoản Ví dụ khi tài khoản đang mở và khách hàng yêu cầu đóng tài khoản thì nóchuyển sang trạng thái đóng Yêu cầu của khách hàng gọi là sự kiện Sự kiện là cái gây

ra các biến đổi từ trạng thái này sang trạng thái khác Nếu tài khoản đang mở và kháchhàng rút tiền thì có thể dẫn tới trạng thái rút quá Trạng thái này xảy ra khi khách hàngcòn nợ ngân hàng hay tài khoản < 0.Điều kiện này gọi là điều kiện gác.Điều kiện gácđiều khiển việc xảy ra hay không xảy ra của biến đổi trạng thái Các tiến trình xảy rakhi đối tượng đang trong trạng thái nào đó gọi là hành động Ví dụ tài khoản bị rút quáthì thông báo được gửi tới khách hàng, việc gửi này gọi là hành động

Thông thường chỉ tạo lập biểu đồ chuyển trạng thái cho các lớp phức tạp Biểu đồnày chỉ dành cho việc làm tài liệu Rose không phát sinh mã trình từ biểu đồ này

II.3.6 Biểu đồ thành phần (component)

Biểu đồ này cho ta cái nhìn vật lý của mô hình Cho thấy các thành phần mềm trong

hệ thống và quan hệ giữa chúng Hai loại thành phần trong biểu đồ: thành phần khảthực và thành phần thư viện Trong Rose, mỗi lớp trong mô hình được ánh xạ đến mộtthành phần mã nguồn Có thể có nhiều biểu đồ thành phần cho một hệ thống, số lượngnày phụ thuộc vào các hệ thống con của chúng Mỗi hệ thống con là gói thành phần,gói là tập hợp các đối tượng

Bất kỳ ai có trách nhiệm dịch chương trình đều quan tâm đến biểu đồ này Nó chothấy trình tự dịch của các mođun trong hệ thống Đồng thời nó cũng cho biết rõ thành

Trang 16

phần nào được tạo ra khi chạy chương trình Biểu đồ thành phần chỉ ra ánh xạ của lớpvào các thành phần cài đặt.

Dưới đây là một số ví dụ về biểu đồ thành phần:

tai khoan tai khoan

NewTaskSpec

Hình 2.10.Biểu đồ thành phần của máy chủ ATM

may doc the

may doc the

man hinh ATM

may tra tien ATM.exe

may tra tien man hinh ATM

Hình 2.11.Biểu đồ thành phần của ATM client

II.3.7 Biểu đồ triển khai (deployment)

Biểu đồ này chỉ ra bố trí vật lý của mạng và các thành phần hệ thống sẽ đặt ở đâu

Trang 17

may in

CSDL ngan hang

may chu ATM vung

so 1 trang

tien

so 2 doi can

Hình 2.12.Biểu đồ triển khai của hệ thống ATM

Biểu đồ này cho thấy máy trạm ATM sẽ chạy trên nhiều địa điểm khác nhau chúnggiao tiếp với máy chủ ATM thông qua mạng riêng Máy chủ ATM sẽ giao tiếp vớimáy chủ CSDL thông qua mạng LAN Như vậy hệ thống ATM có kiến trúc ba tầng:tầng CSDL, tầng máy chủ và tầng máy trạm

II.3.8 Biểu đồ đối tượng

Biểu đồ đối tượng mô hình hoá các thể hiện của các phần tử có trong biểu đồ lớp.

Nó chỉ ra một tập các đối tượng và các mối quan hệ giữa chúng trong một thời điểmnhất định

Ta sử dụng biểu đồ đối tượng để mô hình khung nhìn thiết kế tĩnh và kkhung nhìntiến trình động của một hệ thống Điều này liên quan đến việc mô hình hoá một ảnhtạm thời của hệ thống và biểu diễn tập đối tượng, trạng thái và quan hệ của chúng Trong UML ta sử dụng biểu đồ lớp để mô hình hoá sắc thái tĩnh của các khối cấutrúc của hệ thống Ta cũng sử dụng biểu đồ tương tác để mô hình hoá sắc thái độngcủa hệ thống, bao gồm tập các thể hiện của các khối trên và các thông báo hình thànhgiữa chúng Biểu đồ đối tượng do đó diễn tả phần tĩnh của biểu đồ tương tác, bao gồmcác đối tượng và kết nối giữa chúng nhưng không chứa các thông báo như ở biểu đồtương tác

Thông thường ta mô hình hoá với biểu đồ đối tượng trong khía cạnh của các thểhiện thực và nguyên mẫu Điều đó có nghĩa là cách nhìn này hỗ trợ các yêu cầu vềchức năng hay là dịch vụ mà hệ thống cung cấp tới người sử dụng Biểu đồ đối tượngcho phép ta mô hình các cấu trúc dữ liệu tĩnh

Khi ta mô hình khung nhìn thiết kế tĩnh hoặc khung nhìn tiến trình tĩnh, cách thức ta

sử dụng biểu đồ là mô hình các cấu trúc đối tượng Mô hình cấu trúc đối tượng liên

Trang 18

quan đến việc nhận được một ảnh của các đối tượng trong hệ thống tại một thời điểmnhất định Biểu đồ đối tượng biểu diễn một khung ảnh trong một bộ phim được biểudiễn bởi biểu đồ tương tác.

II.3.9 Biểu đồ hoạt động

Biểu đồ hoạt động mô tả luồng từ hoạt động đến hoạt động Một hoạt động là một

sự thực hiện đang diễn ra ở trong máy trạng thái Các hoạt động cuối cùng tạo ra kếtquả ở một số hành động Mỗi hành động tạo thành một sự tính toán nguyên tố có thểthực thi Một sự tính toán nguyên tố có đặc điểm là làm thay đổi trạng thái của hệthống hoặc của giá trị trả về Các hành động bao gồm việc gọi các thao tác khác, gửimột tín hiệu, tạo hoặc phá huỷ một đối tượng hoặc là một vài sự tính toán khác như làđánh giá một biểu thức Biểu diễn của biểu đồ hoạt động là một đồ thị gồm có cáccung và nút

Hình 2.13 Biểu đồ hoạt động

Các phần tử đặc trưng cho biểu đồ hoạt động bao gồm:

 Các trạng thái hoạt động (activity state) và trạng thái hành động (action state)

 Chuyển dịch (transition)

 Đối tượng

II.4 Kiến trúc hệ thống

Kiến trúc hệ thống là trừu tượng hoá các khía cạnh quan trọng nhất của hệ thống

Nó cung cấp khung trong đó thiết kế sẽ được xây dựng Nó mô tả tầm cỡ, sức mạnhcủa hệ thống, thu thập các UC quan trọng nhất và các yêu cầu ứng dụng Nó thể hiệnphần mềm sẽ được tổ chức như thế nào và cung cấp các giao thức trao đổi dữ liệu vàgiao tiếp giữa các mođun Kiến trúc hệ thống là vật phẩm quan trọng nhất, được sử

Trang 19

dụng để quản lý các điểm nhìn khác nhau để điều khiển phát triển hệ thống tăng dần vàlặp trong suốt chu kỳ sống.

Kiến trúc là tập các quyết định về:

 Tổ chức của hệ thống phần mềm

 Lựa chọn các phần tử cấu trúc và giao diện cho hệ thống

 Hành vi của chúng thể hiện trong hợp tác giữa các phần tử

 Tổ hợp các phần tử cấu trúc và hành vi của con lớn hơn

Kiến trúc phần mềm không chỉ liên quan đến cấu trúc và hành vi mà cả chức năng,tính sử dụng lại, dễ hiểu, ràng buộc công nghệ …

Kiến trúc hệ thống được mô tả bằng các khung nhìn Các khung nhìn ánh xạ vào tổchức và cấu trúc hệ thống, mỗi khung nhìn tập trung vào khía cạnh cụ thể của hệthống

Có 5 khung nhìn sau:

 Khung nhìn trường hợp sử dụng (Use case view)

 Khung nhìn logic (logical view)

 Khung nhìn cài đặt (implennentation view)

 Khung nhìn triển khai (deployment view)

 Khung nhìn tiến trình (process view)

II.4.2 Khung nhìn thiết kế

Rose gọi khung nhìn này là khung nhìn logic Nó biểu diễn tổ chức của các lớp có ýnghĩa nhất và các quan hệ của chúng với nhau Khung nhìn logic tập trung vào hệthống cài đặt hành vi trong UC như thế nào Nó bao gồm các lớp, biểu đồ lớp, biểu đồđối tượng, biểu đồ tương tác, biểu đồ biến đổi trạng thái và các gói

Thông thường đội ngũ phát triển phần mềm tiếp cận khung nhìn logic theo hai bước:

 Bước 1: Là nhận ra các lớp phân tích (analysis class) Các lớp này độc lập vớingôn ngữ

 Bước 2: Sau khi đã nhận ra các lớp phân tích thì đội ngũ phát triển phần mềmchuyển chúng sang lớp thiết kế

Khung nhìn logic tập trung vào cấu trúc logic của hệ thống Từ khung nhìn này giúp tanhận ra các bộ phận hệ thống, khảo sát thông tin và hành vi cho lớp, nhóm các lớp …khảo sát quan hệ giữa các lớp và gói để đảm bảo khả năng sử dụng lại

II.4.3 Khung nhìn cài đặt

Rose gọi khung nhìn này là khung nhìn thành phần (component view) Thành phần

là mođun vật lý hay tệp mã trình để lắp ráp thành hệ thống vật lý Khung nhìn thànhphần bao gồm: thành phần, biểu đồ thành phần và gói

Ngày đăng: 12/04/2013, 16:22

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
1. Phân tích thiết kế hướng đối tượng bằng UML. Đặng Văn Đức. Nhà xuất bản giáo dục Khác
2. Phân tích và thiết kế hướng đối tượng. Nguyễn Tinh Anh Khác
3. Phân tích và thiết kế các hệ thống thông tin quản lý. Trần Thành Trai. Nhà xuất bản trẻ Khác
4. Kỹ nghệ phần mềm. Ngô Trung Việt tập 1, tập 2. Nhà xuất bản giáo dục Khác
5. Object Technology in Aplication Development. Daniel Tkach, Anneke kleppe. Addison-Wesley Khác
6. OMG-Unified Modeling Language Specification. Verson 1.3,5-1999. Object mangement group Khác

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

w