1.khái niệm UML UML là ngôn ngữ mô hình hóa tổng quát được xây dựng để đặc tả, phát triển và tài liệu cho các khía cạnh trong phát triển phần mền hướng đối tượng. UML giúp người phát triển hiểu rõ và quyết định liên quan đến phần mền cây xây dựng. UML bao gồm một tập các khái niệm, các ký hiệu, các biểu đồ và hướng dẫn Nói UML là một ngôn ngữ là vì nó là ngôn ngữ chuẩn để viết ra các bản thiết kế phần mền là ngôn ngữ sử dụng để làm trực quan, để đặc tả, để cấu trúc và để làm tài liệu + la ngôn ngữ : UML=ký pháp+ tập các luật tập trung vào biểu diễn khái niệm và biểu diễn vật lý của hệ thống. + là ngôn ngữ làm trực quan: là ngôn ngữ đồ họa nên dễ hiểu + là ngôn ngữ đặc tả: đặc tả mô hình chính xác + là ngôn ngữ cấu trúc: không phải là ngôn ngữ lập trình, nhưng cho ánh xạ mô hình trong UML tới các ngôn ngữ lập trình khác nhau và ngược lại + là ngôn ngữ làm tài liệu: có khả năng biểu diễn yêu cầu, thử nghiệm, mô hình hóa các hoạt động lập kế hoạch và quản lý sản phẩm 7. Use case Mô tả ai đó sử dụng hệ thống như thế nào, mô tả sự tương tác giữa người sử dụng với hệ thống phần mền để thực hiện giải quyết 1 công việc cụ thể. Use case là 1 phần của vấn đề cần giải quyết, là nền tảng của phân tích hệ thống. Mỗi use case có nhiều biến thể chúng được gọi là các kịch bản. Phải xác định chi tiết các kịch bản để hệ thống xử lý chính xác. mỗi use case đều thể hiện sự tương tác giữa tác nhân và hệ thống các hoạt động phân tích, thiết kế, cài đặt, kiểm thử đều liên quan đến use case
Trang 1PHÂN TÍCH THIẾT KẾ
HỆ THỐNG THÔNG TIN
1.khái niệm UML
- UML là ngôn ngữ mô hình hóa tổng quát được xây dựng
để đặc tả, phát triển và tài liệu cho các khía cạnh trong phát triển phần mền hướng đối tượng UML giúp người phát triển hiểu rõ và quyết định liên quan đến phần mền cây xây dựng UML bao gồm một tập các khái niệm, các
ký hiệu, các biểu đồ và hướng dẫn
Nói UML là một ngôn ngữ là vì
- nó là ngôn ngữ chuẩn để viết ra các bản thiết kế phần mền
- là ngôn ngữ sử dụng để làm trực quan, để đặc tả, để cấu trúc và để làm tài liệu
+ la ngôn ngữ : UML=ký pháp+ tập các luật tập trung vào biểu diễn khái niệm và biểu diễn vật lý của hệ thống
+ là ngôn ngữ làm trực quan: là ngôn ngữ đồ họa nên dễ
Trang 2+ là ngôn ngữ đặc tả: đặc tả mô hình chính xác
+ là ngôn ngữ cấu trúc: không phải là ngôn ngữ lập trình, nhưng cho ánh xạ mô hình trong UML tới các ngôn ngữ lập trình khác nhau và ngược lại
+ là ngôn ngữ làm tài liệu: có khả năng biểu diễn yêu cầu, thử nghiệm, mô hình hóa các hoạt động lập kế hoạch và quản lý sản phẩm
7 Use case
- Mô tả ai đó sử dụng hệ thống như thế nào, mô tả sự
tương tác giữa người sử dụng với hệ thống phần mền để thực hiện giải quyết 1 công việc cụ thể
- Use case là 1 phần của vấn đề cần giải quyết, là nền tảng của phân tích hệ thống - Mỗi use case có nhiều biến thể chúng được gọi là các kịch bản Phải xác định chi tiết các kịch bản để hệ thống xử lý chính xác
- mỗi use case đều thể hiện sự tương tác giữa tác nhân và
hệ thống
- các hoạt động phân tích, thiết kế, cài đặt, kiểm thử đều liên quan đến use case
Trang 3* Actor
+ Actor: là thực thể bên ngoài tương tác đến hệ thống cần xây dựng, có thể là con người, hệ thống khác, hay thiết bị phần cứng
- Kí hiệu (tự vẽ)
8 Vai trò của use case trong tiến trình phát triển
- Use case là một công cụ tốt để người dùng tiếp cận và
mô tả các chức năng của hệ thống theo quan điểm của mình
- Biểu đồ usecase sẽ làm cho khách hàng và người dùng tiềm năng tham gia cùng nhóm phát triển trong bước khởi đầu của quá trình phân tích thiết kế hệ thống
- Biểu đồ use case là cơ sở cho những bước tiếp theo của quá trình phân tích thiết kế hệ thống phần mền
Cách tìm các use case và actor
-Các câu hỏi rút tìm actor
+ ai sử dụng chức năng chính của hệ thống
+ ai giúp hệ thống làm việc hàng ngày
Trang 4+ ai quản trị, bảo dưỡng hệ thống này
-Để tìm use case cần tìm các hành động của hệ thống, các câu hỏi rút tìm yêu cầu
+ actor yêu cầu hệ thống thực hiện chức năng nào
+ actor cần đọc, tạo lập, xóa, lưu trữ, sửa đổi các thông tin nào trong hệ thống
+ có cần thông báo cho actor về sự kiện diễn ra trong
cuộc sống
+ hệ thống cần vào ra đi đến đâu và từ đâu
-> Tên use case là động từ
9 Trong biểu đồ UC, những kết hợp sử dụng giữa
actor với UC
- quan hệ giao tiếp actor-US: actor kích hoạt use case
hoặc use case tác động actor
Ký hiệu:
- Quan hệ tổng quát hóa
- quan hệ kết hợp
* những quan hệ được sử dụng giữa các UC với nhau
- quan hệ bao gồm(include): sử dụng để mô hình hóa
Trang 5những chức năng sử dụng lại
Ký hiệu:
- quan hệ mở rộng <<extend>>: sử dụng để chỉ ra rằng một use case được mở rộng từ một use case khác bằng cách them vào một chức năng cụ thể
Ký hiệu:
* trình bày sự khác biệt giữa 2 quan hệ include và extend
- include là quan hệ bao gồm, thường được dung để mô hình hóa những ca sử dụng lại
- extend là quan hệ mở rộng (chính là kế thừa, phất triển lên), 1 use case được mở rộng từ 1 use case khác bằng cách thêm vào 1 chức năng cụ thể
11 Đối tượng
- Mọi đối tượng là một sự tượng trưng cho một thực thể hoặc là thực thể tồn tại trong thế giới thực Một đối tượng
có thể tượng trưng cho cái gì đó cụ thể
- Đối tượng là cái để gói thông tin và hành vi
- Mỗi đối tượng bao gói trong nó một vài thông tin và một
Trang 6vài hành vi
Ví dụ:
- Một đối tượng quyển sách Ngôn ngữ lập trình bao gồm các thông tin: tên sách, tên tác giả, tên nhà sản xuất, năm xuất bản…
12 Thuộc tính và thao tác của đối tượng
- Thông tin- thuộc tính của đối tượng, hành vi- thao tác của đối tượng
* Tìm kiếm đối tượng
- Khảo sát các danh từ trong tài liệu luồng sự kiện
+ Phân biệt danh từ chỉ đối tượng với danh từ chỉ thuộc tính: danh từ có thể có hành vi hay không, nếu có thì đó là đối tượng ngược lịa thì đó là thuộc tính
14 Biểu đồ tương tác
* Tác dụng:
- dùng để mô hình hóa khía cạnh động của hệ thống
- chỉ ra các tương tác, các đối tượng, quan hệ và các thông điệp trao đổi giữa chúng
Trang 7- từ biểu đồ tương tác người thiết kế và người phát triển xác định các lớp sẽ xây dựng, quan hệ giữa các lớp, thao tác và trách nhiệm của các lớp
* Thành phần:
- đối tượng liên kết
- thông điệp
- chú thích và rang buộc
-> Các biểu đồ tương tác biểu diễn các mối liện hệ giữa các đối tượng trong hệ thống, và giữa đối tượng với tác nhân bên ngoài
- Có 2 biểu đồ tương tác: biểu đồ tuần tự và biểu độ cộng tác
* Ký hiệu của những thành phần trong biểu đồ tương tác (tự tìm hiểu)
14 Mục đích của biểu đồ tuần tự trong phát triển hệ thống
- Lập mô hình các tương tác tổng thể hoặc dùng để xác định các thể hiện của một tương tác
Trang 8- Nói chung thường được dùng để biểu diễn các bước thực hiện trong một kịch bản khai thác của một use case
* Các ký hiệu sử dụng
- Đối tượng: được biểu diễn bởi các hình chữ nhật bên trong là tên của đối tượng Cách viết chung của đối tượng
là tên đối tượng: tên lớp
ký hiệu:
-Các thông điệp: biểu diễn bắng “->” thường từ đối tượng gửi sang đối tượng nhận
- Đường life line: là 1 đường kẻ nối dài phía dưới đối
tượng, mô tả quá trình của đối tượng trong tương tác
thuộc biểu đồ
- Chú thích: biểu đồ tuần tự cũng có thể có chú thích để người đọc dễ dàng hiểu được nội dung của biểu đồ đó
* Ý nghĩa
- Biểu diến mối liên hệ giữa các đối tượng trong hệ thống,
và giữa các đối tượng với tác nhân theo thời gian
- Biểu đồ tuần tự nhấn mạnh thứ tự thực hiện của các
Trang 9tương tác
16 Khái niệm lớp:
- Lớp là 1 nhóm các đối tượng có chung thuộc tính, chung hành vi, chung mối quan hệ với các đối tượng khác và chung nghữ nghĩa
* Mối quan hệ giữa lớp và đối tượng
- Đối tượng là hiện thực của lớp
- Mỗi đối tượng chỉ thuộc 1 lớp nào đó
- Lớp xác định thông tin nào đối tượng có thể lưu trữ và hành vi nào đối tượng có thể có
- Chỉ tìm lớp sau khi đã tìm được đối tượng
* Ký hiệu (tự vẽ)
17 Cách xác định lớp
- Có thông tin nào lưu trữ hay phân tích
- Có hệ thống ngoài không
- Có mẫu thư viện lớp hay thành phần
- Hệ thống cần quản lý các thiết bị ngoại vi nào
- Actor đóng vai trò tác nghiệp nào
Trang 10* Các kiểu lớp có đặc điểm gì và được xác định như thế nào
- Lớp biên:
+ được sử dụng để mô hình hóa sự tương tác giữa các hệ thống và các actor bao gồm việc nhận và hiển thị thông tin từ các yêu cầu đến và đi của người dùng và hệ thống ngoài
+ Mỗi lớp biên phải liên quan ít nhất 1 actor
+ Các lớp biên thường thể hiện các trừu tượng hóa của cửa số, biểu diễn, bảng hiển thị, các giao diện truyền
thông, các giao diện máy in, các độ cảm biến, các thiết bị đầu cuối nhưng ở mức độ cao
Ký hiệu:
- Lớp thực thể
+ được sử dụng để mô hình hóa các thông tin tồn tại lâu dài và có thể được lưu trữ + thể hiện các cấu trúc dữ liệu logic
+ tìm lớp thực thể trong luồng sự kiện và biểu đồ tương tác
Trang 11+ tạo 1 bảng CSDL cho mỗi lớp loại này, mỗi thuộc tính của lớp là 1 trường trong bảng
Ký hiệu:
- lớp điều khiển
+ thể hiện sự phối hợp, sự sắp xép các trình tự, các giao dịch, sư điều khiển của các đối tượng
+ thường được sử dụng để gói lại các điều khiển liên quan đến một use case cụ thể
+ lớp điều khiển không tự thực hiện chức nào
Ví dụ: thực thi use case rút tiền
- Lớp biên: giao diện nghiệp vụ_ nơi actor tác động lên hệ thống và đưa vào các thông tin cần thiết, nhận thông tin
do hệ thống đưa ra
- Lớp biên: máy trả tiền_ kiểm soát đưa tiền trả khách
- Lớp điều khiển: điều khiển rút tiền_ điều khiển việc kiểm tra điều kiện rút tiền và đưa tiền trả khách, điều
khiển giảm số dư tài khoản
- Lớp thực thể: tài khoản_ lưu trữ các thông tin về tài
Trang 1218 Để chỉ ra những thuộc tính của lớp chúng ta cần:
- Tìm trong tài liệu use case, tìm các danh từ trong đó lưu
ý phân biệt danh từ chỉ thuộc tính với danh từ chỉ lớp hay đối tượng
- Tìm trong tài liệu yêu cầu hệ thống, nếu có mô tả loại thông tin gì mà hệ thống sẽ thu nhập thì những thông tin này đều là thuộc tính của 1 lớp
- Tìm trong cấu trúc cơ sở dữ liệu, thuộc tính của các lớp thực thể, tương ứng 1:1, giữa 1 bản cơ sở dữ liệu với 1 bản thực thể
* Đặc tả thuộc tính của 1 lớp gồm những thông tin chi tiết là:
24 Thành phần của biểu đồ hoạt động
- Hoạt động và hành động
+ Hoạt động: là một đơn vị công việc cần được thực hiện,
nó có thể lớn hay nhỏ và trong một khoảng thời gian dài hay ngắn
+ Ký hiệu
Trang 13-Trạng thái
+ trạng thái trong biểu đồ hoạt động đóng vai trò một
điểm chờ một biến cố xảy r trước khi hoạt động được tiếp tục
+ có 2 trạng thái đặc biệt là trạng thái bắt đầu và trạng thái kết thúc
+ trong biểu đồ hoạt động chỉ có một trạng thái bắt đầu nhưng có thể có nhiều trạng thái kết thúc
+ ký hiệu
-Chuyển tiếp: trong một biểu đồ hoạt động, chuyển tiếp từ hoạt động này sang hoạt động khác, từ trạng thái này sang trạng thái khác hay từ 1 hoạt động sang một trạng thái hoặc ngược lại
+ ký hiệu
-Rẽ nhánh với điểm quyết định
+ điểm quyết định là điểm trên dòng công việc mà tại đó
có thể rẽ nhánh theo các hướng khác nhau tùy theo điều
Trang 14kiện cụ thể
+ký hiệu
-Đường phân luồng nghiệp vụ(đường bơi)
+ đường phân luồng nghiệp vụ (còn gọi là đường bơi) có tác dụng chỉ ra một hoạt động xảy ra ở đâu trong một hệ thống phức tạp
+ mỗi đường bơi là một cột trong biểu đồ hoạt động, có tên và nhiệm vụ riêng biệt
+ các hoạt động được nhóm lại trong mỗi đường bơi và chuyển tiếp có thể được vẽ trải qua các đường bơi
+ đường bơi rất hữu ích với các hệ thống thực thi trên môi trường internet, nó xác định các vùng mà ở đó có các hoạt động được thực hiện
+ ký hiệu
* Đường phân luông nghiệp vụ được sử dụng trong
trường hợp
- Phân tách các lớp đối tượng khác nhau tồn tại trong biểu
đồ hoạt động