Phân tích thiết kế hướng đối tượng bằng UML
CHƯƠNG 2. QUY TRÌNH PHÁI TRIỂN PHẦN MỀM
HƯỚNG ĐỐI TƯỢNG SỬ DỤNG UML
2.1. Giới thiệu ngôn ngữ mô hình hoá thống nhất UML (Unified
Modeling Language)
UML là ngôn ngữ mô hình hợp nhất, nó được hiểu như một ngôn ngữ thống
nhất những xu hướng và hình thái của cuộc cách mạng tri thức trong lĩnh vực
công nghệ thông tin. Nó là một phương tiện giúp cho các tổ chức có thể nhận
thức một cách tốt nhất lợi thế cạnh tranh thông qua việc nắm bắt, truyền đạt,
trao đổi và nâng cao tri thức trong lĩnh vực công nghệ phần mềm. Chính xác
hơn UML là ngôn ngữ mô hình hoá chuẩn để thiết kế phần mềm hướng đối
tượng, được dùng để đặc tả, trực quan hoá, xây dựng và làm tài liệu cho các hệ
thống phần mềm[2] . UML là ngôn ngữ đồ hoạ với các tập quy tắc và ngữ
nghĩa. Các quy tắc và ngữ nghĩa của một mô hình được thể hiện bằng tiếng anh
gọi là Ngôn ngữ rang buộc đối tượng (OCL – Object Constraint Language).
OCL là ngôn ngữ đặc tả sử dụng logic đơn giản để đặc tả các đặc tính của hệ
thống.
2.1.1. Mục đích của UML
• Mô hình hoá các hệ thống và sử dụng các khái niệm hướng đối tượng
một cách thống nhất.
• Cho phép đặc tả, hỗ trợ đặc tả tường minh mối quan hệ giữa các khái
niệm trong hệ thống, đồng thời mô tả được mọi trạng thái hoạt động
(tĩnh và động ) của hệ thống.
• Hỗ trợ khả năng sử dụng lại và kế thừa ở phạm vi rộng để xây dựng
những hệ thống phức tạp và nhạy cảm như : hệ thống tự động, hệ
thống thời gian thực.
• Tạo ra ngôn ngữ mô hình hoá sử dụng được cho cả người và máy
tính.
2.1.2. Công dụng của UML
• UML là ngôn ngữ chuẩn để viết kế hoạch chi tiết phần mềm.
• Vạch ra cho hệ thống những chức năng chính của nó sử dụng các mô
hình tình huống sử dụng và các tác nhân.
• Minh hoạ các use case bằng các biểu đồ tương tác (interaction
diagram)
• Mô tả cấu trúc tĩnh của một hệ thống sử dụng các biểu đồ lớp (class
diagram).
• Mô hình hoá trạng thái của đối tượng bằng các biểu đồ chuyển tiếp
trạng thái.
• Minh hoạ cấu trúc thi hành vật lý bằng các biểu đồ thành phần và
triển khai
Mở rộng chức năng bằng các mầu cung cấp sẵn (stereotype)
- 5 -
Phân tích thiết kế hướng đối tượng bằng UML
2.1.3. Các đặc trưng và khả năng của UML
2.1.3.1. UML là ngôn ngữ mô hình đồ hoạ
Ngôn ngữ cung cấp bảng từ vựng và tập các quy tắc để kết hợp các từ
trong bảng 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 các 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 phần mềm.
Ngôn ngữ phải cho phép biểu diễn nhiều khung nhìn (views) khác nhau
của kiến trúc hệ thống trong suốt quá trình phát triển 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ình và đọc mô hình,
nhưng không cho biết mô hình nào cần phải được lập và khi nào lập chúng mà
phải dựa vào quy trình phát triển phần mềm. Các biểu diễn mô hình trong UML
là các biểu diễn bằng đồ hoạ.
2.1.3.2. UML là ngôn ngữ đặc tả có cấu trúc
Đặc tả là xây dựng mô hình chính xác, rõ rang, không nhập nhằng, hoàn
thiện và đầy đủ những điểm mấu chốt của vấ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ần mềm.
2.1.3.3. UML là ngôn ngữ trực quan
Bằng hệ thống các kí hiệu đồ hoạ và các biểu đồ với các chú giải đi kèm,
UML cho ta hình dung được hệ thống đang cần xây dựng từ nhiều góc độ khác
nhau.
2.1.3.4. 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 cho khả 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.
• Thông qua UC biểu đồ trường hợp sử dụng , tác nhân để biết giới hạn
và các chức năng chính của hệ thống.
• Trong UML UC (User case) được miêu tả bằng biểu đồ logic. Sử
dụng biểu đồ UC, tác nhân (Actor) có thể chia dự án thành các dự án
nhỏ có thể quản lý được. Nhìn vào biểu đồ đó và các tài liệu mô tả,
người phân tích có thể biết hệ thống có khả năng làm gì.
• Biểu diễn cấu trúc tĩnh của hệ thống bằng biểu đồ lớp. Sử dụng biểu
đồ trình tự và cộng tác để thấy được trình tự và logic toàn bộ hệ
thống và các thông báo giữa các đối tượng.
• 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 chức năng bằng stereotypes.
2.1.4. Mô hình khái niệm của UML
Để hiểu, đọc được UML và tạo ra một số mô hình cơ bản ta phải hình
dung được mô hình khái niệm của ngôn ngữ. Muốn vậy đòi hỏi chúng ta phải
nắm được ba vấn đề chính bao gồm :
Các khối cơ bản để xây dựng mô hình
Các quy tắc liên kết
Các cơ chế chung được sử dụng cho ngôn ngữ
- 6 -
Phân tích thiết kế hướng đối tượng bằng UML
2.1.4.1. Các khối cơ bản xây dựng mô hình
Các khối để hình thành mô hình UML gồm ba loại:
- Phần tử
- Quan hệ (relationships)
- Biểu đồ (diagram)
Phần tử trong mô hình là căn bản, các quan hệ gắn các phần tử lại với
nhau, còn biểu đồ nhóm tập hợp các phần tử. Trong UML có 4 loại phần tử mô
hình đó là cấu trúc, hành vi, nhóm và chú thích.
Phần tử cấu trúc
Phần tử cấu trúc là các danh từ trong mô hình UML, 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ý.
• Lớp (Class)
Lớp là mô tả tập 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 mô hình ghép nối, biểu diễn
bằng hình chữ nhật có 3 phần tên, thuộc tính và thao tác.
Hình 2. Lớp
• Giao diện (Interface)
Giao diện là một tập hợp các thao tác đặc tả một dịch vụ của lớp hay
thành phần. Giao diện mô tả hành vi thấy được từ ngoài của thành phần.
Biểu diễn toàn bộ hay một phần hành vi của lớp và được gắn vào lớp hay
thành phần thực hiện.
Hình 3. Giao diện
• Cộng tác (Collaboration)
Sự cộng tác định nghĩa một tương tác và một bộ các nguyên tắc và các
phần tử khác làm việc cùng nhau để tạo ra một hành vi cộng tác lớn hơn
tổng hành vi của các phần tử.
Hình 5. Cộng tác
• Ca sử dụng (Use case)
Ca sử dụng là tậo hợp các hành động mà hệ thống thực hiện để đạt được
một kết quả cho tác nhân cụ thể.
- 7 -
Tên lớp
Thuộc tính
Thao tác
Open()
Close()
Tên cộng tác
Tên Use case
Phân tích thiết kế hướng đối tượng bằng UML
Hình 6. Ca sử dụng
• Lớp hoạt động (Active class)
Lớp tích cực là lớp có đối tượng làm chủ một hay nhiều tiến trình hay
luồng. Đối tượng của nó biểu diễn các thành phần có hành vi đang tương
tranh với các thành phần khác. Kí pháp đồ hoạ giống lớp thông thường
nhưng biên hình chữ nhật tô đậm.
Hình 7. Lớp hoạt động
• Thành phần (Component)
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.
Hình 7. Thành phần
• Nút (Node)
Là thể hiện thành phầ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.
Hình 8. Nút
Phần tử hành vi
Phần tử hành vi là bộ phận động của mô hình UML. 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ó 2 loại
• Tương tác (Interaction)
- 8 -
File.cpp
Máy chủ
Phân tích thiết kế hướng đối tượng bằng UML
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ể nhằm thực hiện mục đích cụ thể.
Hiển thị
Hình 9. Thông điệp
• Máy trạng thái (State machine)
Máy trạng thái là hành vi chỉ ra trật tự các trạng thái mà đối tượ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ác của lớp có thể được xác định bằng máy trạng thái. Máy trạng thái
kích hoạt nhiều phần tử, bao gồm trạng thái, chuyển tiếp từ trạng thái
này sang trạng thái khác, sự kiện và các hoạt động (đáp ứng sự kiện).
Hình 10. Máy trạng thái
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ộc nhóm này đó là gói (package). Gói là một cơ chế để tổ chức các phần
tử vào các nhóm. Các phần tử cấu trúc, phần tử hành vi thậm chí là cả phần
tử nhóm khác nhau có thể được đặt vào trong một gói. Chỉ 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ạy chương trình.
Hình 11. Gói
Chú thích (Annotational)
Phần tử chú thích là bộ phận chú giải của một mô hình UML. Là lời giải
thích áp dụng để mô tả các phần tử khác trong mô hình. Hay còn gọi là lời ghi
chú.
Các quan hệ trong UML
• Quan hệ phụ thuộc (dependency)
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.
• Quan hệ kết hợp (association)
Kết hợp là quan hệ cấu trúc để mô tả tập liên kết (một liên kết là kết
nốigiữa các đối tượng). Khi đối tượng của lớp này gửi / nhận thông điệp
thì gọi chúng có quan hệ kết hợp.
• Khái quát hoá (generalization)
Khái quát hoá là quan hệ đặc biệt hoá / khái quát hoá mà trong đó đối
tượng cụ thể sẽ kế thừa các thuộc tính và phương pháp của đối tượng
tổng quát hoá.
• Hiện thực hoá (realization)
- 9 -
Các đối tượng
GUI
Chờ
Phân tích thiết kế hướng đối tượng bằng UML
Hiện thực hoá 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.
2.1.4.2. 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.
Có các kiểu sau:
- Boolean: kiểu đếm với true/false
- Biểu thức(Expression): là xâu ký tự có cú pháp.
- Tính nhiều (Multiplicity): tập không rỗng của các số nguyên dương và ký
tự * .
- Tên (Name): là xâu ký tự có khả năng đẩct 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 (Unintepreted): là cái gì đó mà ý nghĩa của nó phụ thuộc vào
lĩnh vực.
2.1.4.3. Biểu đồ trong 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ây dựng một vài kiểu biểu đồ trực quan để biểu diễn các khía cạnh
khác nhau của hệ thống, bao gồm :
• Biểu đồ ca sử dụng (Use case diagram)
Chỉ ra tương tác giữa các UC và các tác nhân. UC biểu diễn các chức
năng hệ thống. Tác nhân là con ngườig hay hệ thống khác cung cấp hay thu
nhận thông tin từ hệ thống đang được xây dựng. Chỉ ra tác nhân nào khởi
độngUC và khi nào tác nhân nhận thông tin từ hệ thống.
Biểu đồ UC chỉ ra chức năng tổng thể của hệ thống đang phát triển.
VD:
Modify Existing Order
Salesperson
Accounting System
Enter New Order
• Biểu đồ tương tác (Interaction diagram)
Biểu đồ tương tác bao gồm hai dạng là biểu đồ trình tự và cộng tác
Biểu đồ trình tự (sequence)
Biểu đồ trình tự 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.
- 10 -
Phân tích thiết kế hướng đối tượng bằng UML
Biểu đồ trình tự là biểu đồ tương tác theo trật tự thời gian của các giao
tiếp bằng thông điệp giữa các đối tượng. Biểu đồ được đọc từ đỉnh xuống đáy .
Mỗi UC có nhiều luồng dữ liệu. Mỗi biểu đồ trình tự biểu diễn một luồng.
Biểu đồ cộng tác (Collaboration)
Biểu đồ cộng tác chỉ ra các thông tin như biểu đồ trình tự nhưng theo
cách khác, nó tập trung vào tổ chức cấu trúc các đối tượng gửi và nhận thông
điệp. Biểu đồ cộng tác và trình tự có thể biến đổi qua lại.Biểu đồ cộng tác đối
tượng được đặt trong hình chữ nhật , tác nhân là người hình cây như biểu đồ
trình tự. Biểu đồ cộng tác không quan tâm đến thời gian. Các đối tượng giao
tiếp với nhau thể hiện bằng đường nối
Biểu đồ cộng tác chỉ ra luồng sự kiện xuyên qua kịch bản của UC. Biểu
đồ này cho khả năng dễ quan sát các đối tượng nhưng khó quan sát về trình tự
thông tin.
: Salesperson
Order Options
Form
Order Detail
Form
Order
#1234
1: Create new order
3: Enter order number, customer, order items
4: Save the order
2: Open form
5: Create new, blank order
6: Set the order number, customer, order item
7: Save the order
• Biểu đồ lớp (Class diagram)
Biểu đồ lớp 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 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ái của một số thuộc tính và thao
tác có gắn biểu tượng khoá, có nghĩa rằng đó là các thuộc tính và thao tác riêng.
Trong biểu đồ lớp có các loại lớp sau;
- Lớp tham số: là lớp được sử dụng để tạo ra họ các lớp khác. Còn có tên
là lớp mẫu (template)
- Lớp hiện thực: là lớp tham số mà đối số của nó có giá trị.
- Lớp tiện ích: Là tập hợp các thao tác.
- Lớp tiện ích tham số: Là lớp tham số chứa tập các thao tác. Đó là mẫu
để tạo lập ra lớp tiện ích.
- Lớp tiện ích hiện thực: là lớp tiện ích tham số mà đối số của chúng có
giá trị.
- Metaclass: là lớp mà hiện thực của nó là lớp chứ không phải đối tượng.
Ngoài ra trong biểu đồ lớp, Stereotype là cơ chế để phân nhóm lớp. Lớp
biên (boundary class), Lớp thực thể (Entity class), Lớp điều khiển
(Control class).
• Biểu đồ chuyển trạng thái (state transition diagram)
o Biểu đồ chuyển trạng thái mô tả vòng đời của đối tượng, từ
khi nó được sinh ra đến khi bị phá huỷ. Biểu đồ cung cấp cách thức mô hình
hoá các trạng thái khác nhau của đối tượng. Trong khi biểu đồ lớp cung cấp bức
- 11 -
Phân tích thiết kế hướng đối tượng bằng UML
tranh tĩnh về các lớp và quan hệ thì biểu đồ chuyển trạng thái được sử dụng để
mô hình hoá các hành vi động của hệ thống, chỉ ra hành vi động của đối tượng.
Thông thường không tạo lập biểu đồ chuyển trạng thái cho mọi lớp mà
chỉ cho các lớp phức tạp.
o Biểu đồ chuyển trạng thái bao gồm các thông tin về các trạng
thái khác nhau của đối tượng, thể hiện các đối tượng chuyển đổi từ trạng thái
này sang trạng thái khác thế nào.
o Biểu đồ trạng thái có điểm khởi đầu (hình tròn đen) và vài
điểm kết thúc (hình tròn đen có đường bao). Các hoạt động trong biểu đồ thì
được đặt trong chữ nhật góc tròn.
• Biểu đồ hoạt động (Activity diagram)
Biểu đồ hoạt động là một dạng đặc biệt của biểu đồ trạng thái, nó chỉ ra
một luồng các hoạt động diễn ra từ hoạt động này đến hoạt động khác. Biểu đồ
hoạt động hướng đến khung nhìn của hệ thống.
• Biểu đồ thành phần (Component diagram)
Biểu đồ thành phần cho ta cái nhìn vật lý của mô hình. Cho ta thấy các
thành phần phần mềm trong hệ thống và quan hệ giữa chúng. Có hai loại thành
phần đó là thành phần khả thực và thư viện.
Biểu đồ thành phần là biểu đồ UML hiển thị các thành phần của hệ thống và
phụ thuộc giữa chúng.
• Biểu đồ triển khai (Deployment diagram)
Biểu đồ triển khai chỉ ra bố trí vật lý của mạng và các thành phần hệ
thống sẽ đặt ở đâu.
Thông qua biểu đồ triển khai mà người quản lý dự án, người sử dụng, kiến trúc
sư và đội ngũ triển khai hiểu phân bổ vật lý của hệ thống và các hệ thống con sẽ
được đặt ở đâu.
2.1.5. Kiến trúc hệ thống trong UML
Kiến trúc hệ thống phần mềm đượ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.
• Khung nhìn ca sử dụng (UC view)
Khung nhìn UC mô tả các chức năng, hành vi và nhiệm vụ của hệ thống.
Khung nhìn này thể hiện mọi yêu cầu của hệ thống, do vậy khung nhìn này luôn
đứng trước mọi khung nhìn khác, được sử dụng để điều khiển, thúc đẩy và thẩm
định các công việc của tất cả các giai đoạn trong quá trình phát triển phần mềm.
• Khung nhìn thiết kế (Design view)
Khung nhìn thiết kế cảu một hệ thống biểu diễn tổ chức logic các lớp và
các quan hệ của chúng với nhau. Khung nhìn này mô tả cấu trúc tĩnh của các
lớp, các đối tượng và sự liên kết của chúng thể hiện mối liên kết động thông
qua trao đổi các thông điệp và được thể hiện trong các biểu đồ lớp, biểu đồ đối
tượng, biểu đồ tương tác. Khung nhìn thiết kế tập trung vào cấu trúc của hệ
thống, từ đó nhận biết được các bộ phận cơ bản cấu thành hệ thống và thể hiện
mọi quá trình trao đổi, xử lý thông tin cơ bản trong hệ thống.
• Khung nhìn cài đặt (Implemetation view)
Khung nhìn cài đặt hay còn gọi là khung nhìn thành phần, khung nhìn
thực hiện bao gồm các thành phần và các file được sử dụng để kết hợp và đưa
ra các hệ thống vật lý. Khung nhìn thành phần bao gồm thành phần, biểu đồ
- 12 -
Phân tích thiết kế hướng đối tượng bằng UML
thành phần và gói trong đó một vài thành phần là thư viện còn một số khác là
mã trình khả thực (.exe) và thư viện (.dll).
Người quan tâm đến khung nhìn này là người có trách nhiệm quản lý mã trình,
dịch chương trình và triển khai ứng dụng.
• Khung nhìn triển khai (Employment view)
Khung nhìn này tập trung vào phân bổ vật lý của tài nguyên và phân bổ
nhiệm vụ giữa các tài nguyên. Liên quan đến triển khai vật lý của hệ thống,
khác với kiến trúc logic.
• Khung nhìn tiến trình (Process view)
Biểu diễn phân tách các luồng thực hiện chương trình, đồng bộ giữa các
luồng, phân bổ các đối tượng và lớp cho các luồng thực hiện khác nhau. Khung
nhìn triến trình tập trung vào các nhiệm vụ tương tranh với nhau như thế nào
trong hệ thống đa nhiệm.
Trong biểu đồ của Rose không có khung nhìn này.
2.2. Giới thiệu tiến trình RUP (Rational Unified Process)
RUP là gì? RUP là quy trình công nghệ phần mềm được phát triển bởi
hang Rational. RUP hỗ trợ các hoạt động giữa các nhóm, phân chia công việc
cho từng thành viên trong nhóm, trong từng giai đoạn khác nhau của quá trình
phát triển phần mềm.
RUP sử dụng hệ thống ký hiệu trực quan của UML và cũng được phát triển
song song với UML.
Một tiến trình là tập hợp có thứ tự các bước nhằm đạt được một mục đích có
nghĩa là chuyển giao sản phẩm phần mềm phù hợp với yêu cầu nghiệp vụ một
cách hiệu quả.
UML là một tiến trình độc lập, có thể sử dụng kết hợp với một số tiến trình
kỹ nghệ phần mềm. RUP là một cách tiếp cận hướng đối tượng phù hợp với
UML. Mục đích của RUP là cho phép tạo ra sản phẩm phần mềm tốt nhất phù
hợp với yêu cầu của người sử dụng với nguồn tài chính và kế hoạch có thể dự
tính trước. RUP thâu tóm một số áp dụng phát triển phần mềm tốt nhất hiện nay
theo hình thức có thể làm thích hợp cho một phạm vi rộng các dự án và các tổ
chức.
Về phía quản lý, RUP cung cấp một cách tiếp cận có quy tắc về cách phân
công công việc và gán trách nhiệm trong một tổ chức phát triển phần mềm.
2.2.1. Đặc điểm của RUP
RUP là một quy trình công nghệ phần mềm hoàn chỉnh, hỗ trợ tăng năng
suất làm việc theo nhóm.
RUP là một tiến trình lặp. Đối với các hệ thống đơn giản, việc xác định toàn
bộ vấn đề, thiết kế toàn bộ giải pháp, xây dựng phần mềm và kiểm thử sản
phẩm cuối cùng có thể đươc thực hiện một cách đầy đủ. Tuy nhiên, đối với các
hệ thống phức tạp thì việc tiếp cận trực tiếp để phát triển hệ thống là rất khó
thực hiện. Hệ thống được xây dựng dựa vào cách tiếp cận lặp thông qua các chu
kỳ là rất linh hoạt. Ngoài ra nó cũng cho phép nhận và giải quyết rủi ro sớm
hơn trước và là một tiến trình có thể tuỳ biến.
RUP có khả năng tạo, duy trì và quản lý các loại mô hình. Các hoạt động
của RUP tập trung vào việc tạo ra và bảo trì các mô hình hơn là các tài liệu trên
giấy để cực tiểu hoá sự kết hợp việc tạo ra và bảo trì các tài liệu và đồng thời
- 13 -
Phân tích thiết kế hướng đối tượng bằng UML
làm cực đại hoá nội dung các thông tin liên quan. Các mô hình, đặc biệt là các
mô hình được đặc tả bằng UML, nó cung cấp sự biểu diễn giàu ngữ nghĩa cho
các phần mềm đang phát triển.
Việc phát triển phần mềm thro RUP là lấy kiến trúc hệ thống làm trung tâm.
Quá trình tập trung vào sự phát triển trước và dựa trên một kiến trúc phần mềm.
Các hoạt động trong RUP được điều khiển bởi ca sử dụng. RUP đặt sự quan
tâm đặc biệt tới việc xây dựng các hệ thống dựa trên sự hiểu biết về hệ thống
được chuyển giao sẽ hoạt động như thế nào. Các kí hiệu cảu ca sử dụng và các
kịch bản được sử dụng để định ra luồng tiến trình từ việc nắm bắt yêu cầu đến
việc kiểm thử và để cung cấp các đường đi có thể lần vết thông qua sự phát
triển đến hệ thống được chuyển giao.
RUP có hướng sử dụng ngôn ngữ UML, hỗ trợ các kỹ thuật hướng đối
tượng. Mỗi mô hình đều hướng đối tượng. Các mô hình RUP dựa trên các khái
niệm của các đối tượng, các lớp và mối quan hệ giữa chúng và chúng sử dụng
UML như là những ký hiệu chung.
RUP được hỗ trợ bởi nhiều công cụ phát triển phần mềm. Và là một quy
trình có thể cấu hình được. Mặc dù không có một quá trình đơn nào là thích hợp
cho tất cả các tổ chức phát triển phần mềm, nhưng RUP có thể và có thể được
chia theo quy mô để phù hợp với các yêu cầu của dự án trong phạm vi từ các
đội phát triển phần mềm nhỏ đến các tổ chức phát triển phần mềm lớn. RUP
được xây dựng trên một kiến trúc tiến trình đơn giản và rõ rang, kiến trúc này
mang đến sự tương đồng thông qua các tiến trình và chúng có thể thay đổi để
thích nghi với các tình huống khác nhau. RUP có chứa hướng dẫn về cách định
hình các tiến trình cho phù hợp với nhu cầu của một tổ chức.
2.2.2. Vòng đời phát triển phần mềm theo RUP
Vòng đời phát triển phần mềm theo RUP được mô tả như sau:
- 14 -
Không có nhận xét nào:
Đăng nhận xét