Phân tách thiết kế hệ thống thông tin dùng biểu đồ UML (Phần 1)

1.Giới Thiệu

Ngôn ngữ mô hình hóa thống nhất (tiếng Anh: Unified Modeling Language, viết tắt thành UML) là 1 ngôn ngữ mô hình gồm những ký hiệu đồ họa mà những phương pháp hướng đối tượng dùng để thiết kế những hệ thống thông tin 1 phương pháp nhanh chóng.

Bí quyết xây dựng những mô hình trong UML thích hợp mô tả những hệ thống thông tin cả về cấu trúc cũng như hoạt động. Bí quyết tiếp cận theo mô hình của UML giúp ích siêu nhiều cho những người thiết kế và thực hành hệ thống thông tin cũng như những người dùng nó; tạo nên 1 loại nhìn bao quát và toàn bộ về hệ thống thông tin dự định xây dựng. Bí quyết nhìn bao quát này giúp nắm bắt trọn vẹn những bắc buộc của khách hàng; chuyên dụng cho từ giai đoạn phân tách tới việc thiết kế, thẩm định và đánh giá siêu phẩm ứng dụng khoa học thông tin. Những mô hình hướng đối tượng được lập cũng là cơ sở cho việc ứng dụng những chương trình tự động động sinh mã trong những ngôn ngữ lập trình hướng đối tượng, chẳng hạn như ngôn ngữ C++, Java,… Phương pháp mô hình này siêu hữu dụng trong lập trình hướng đối tượng. Những mô hình được dùng bao gồm Mô hình đối tượng (mô hình tĩnh) và Mô hình động.

UML dùng 1 hệ thống ký hiệu thống nhất biểu diễn những Phần tử mô hình (mannequin components). Tập hợp những phần tử mô hình tạo thành những Sơ đồ UML (UML diagrams). Có những loại sơ đồ UML chủ yếu sau:

  • Sơ đồ lớp (Class Diagram)
  • Sơ đồ đối tượng (Object Diagram)
  • Sơ đồ tình trạng dùng (Use Circumstances Diagram)
  • Sơ đồ trình tự động (Sequence Diagram)
  • Sơ đồ cùng tác (Collaboration Diagram hay là Composite Construction Diagram)
  • Sơ đồ trạng thái (State Machine Diagram)
  • Sơ đồ thành phần (Element Diagram)
  • Sơ đồ hoạt động (Exercise Diagram)
  • Sơ đồ triển khai (Deployment Diagram)
  • Sơ đồ gói (Package deal Diagram)
  • Sơ đồ liên lạc (Communication Diagram)
  • Sơ đồ tương tác (Interplay Overview Diagram – UML 2.0)
  • Sơ đồ phối hợp thời kì (Timing Diagram – UML 2.0)

2.1 số dạng biểu đồ UML phổ thông}

2.1.Biểu đồ Use case (Use Case Diagram)

1 biểu đồ Use case chỉ ra 1 số lượng những tác nhân ngoại cảnh và mối hợp tác của chúng đối có Use case mà hệ thống phân phối. 1 Use case là 1 lời miêu tả của 1 chức năng mà hệ thống phân phối. Lời miêu tả Use case thường là 1 văn bản tài liệu, nhưng kèm theo ấy cũng có thể là 1 biểu đồ hoạt động. Những Use case được miêu tả duy nhất theo hướng nhìn từ bên cạnh vào của những tác nhân (hành vi của hệ thống theo như sự mong đợi của người dùng), ko miêu tả chức năng được phân phối sẽ hoạt động nội bộ bên trong hệ thống ra sao. Những Use case định nghĩa những bắc buộc về mặt chức năng đối có hệ thống.

  • Hệ thống: Sở hữu vai trò là thành phần của biểu đồ use case, hệ thống biểu diễn ranh giới giữa bên trong và bên bên cạnh của 1 chủ thể trong phần mềm chúng ta xây dựng.1 hệ thống trên trong biểu đồ use case ko nhất thiết là 1 hệ phần mềm; nó có thể là 1 cái máy,hoặc là 1 hệ thống thực như 1 công ty, 1 trường đại học,…

  • Tác nhân(actor):là khách hàng của hệ thống, 1 tác nhân có thể là 1 khách hàng thực hoặc những hệ thống máy tính khác có vai trò nào ấy trong hoạt động của hệ thống. Như vậy, tác nhân thực hành những use case. 1 tác nhân có thể thực hành nhiều use case và ngược lại 1 use case cũng có thể được thực hành bởi nhiều tác nhân

    Tác nhân được kí hiệu:

    hoặc

  • Những use case: Đây là thành phần cơ bản của biểu đồ use case. Những use case được biểu diễn bởi những hình elip.Tên những use case biểu lộ 1 chức năng xác định của hệ thống.

    Những Use case được kí hiệu bằng hình elips.

  • Mối quan hệ giữa những use case:

    • Affiliation: thường được dùng để mô tả mối quan hệ giữa Actor và Use Case và giữa những Use Case có nhau

    Thí dụ quan hệ affiliation:

    • Embody: là quan hệ giữa những Use Case có nhau, nó mô tả việc 1 Use Case lớn được chia ra thành những Use Case bé để dễ cài đặt (module hóa) hoặc biểu lộ sự dùng lại.

    Thí dụ quan hệ embody:

    • Extent: Lengthen dùng để mô tả quan hệ giữa 2 Use Case. Quan hệ Lengthen được dùng lúc có 1 Use Case được tạo ra để bổ sung chức năng cho 1 Use Case có sẵn và được dùng trong 1 điều kiện nhất định nào ấy.

    Thí dụ quan hệ extent:

    • Generalization: được dùng để biểu lộ quan hệ thừa kế giữa những Actor hoặc giữa những Use Case có nhau.

    Thí dụ quan hệ Generalization:

Xem Thêm  Nhân Duyên Tiền Kiếp Là Gì, 6 Dấu Hiệu Cho Thấy Bạn Đã Gặp Đúng Người Đó

2.2.Biểu đồ lớp (Class Diagram)

1 biểu đồ lớp chỉ ra cấu trúc tĩnh của những lớp trong hệ thống. Những lớp là đại diện cho những “đối tượng” được xử lý trong hệ thống. Những lớp có thể quan hệ có nhau trong nhiều dạng thức:

  • hợp tác (related – được nối kết có nhau),
  • phụ thuộc (dependent – 1 lớp này phụ thuộc vào lớp khác),
  • chuyên biệt hóa (specialised – 1 lớp này là 1 kết quả chuyên biệt hóa của lớp khác),
  • hay đóng gói ( packaged – hợp có nhau thành 1 đơn vị).

Toàn bộ những mối quan hệ ấy đều được biểu lộ trong biểu đồ lớp, đi kèm có cấu trúc bên trong của những lớp theo khái niệm thuộc tính (attribute) và thủ tục (operation). Biểu đồ được coi là biểu đồ tĩnh theo phương diện cấu trúc được miêu tả trên đây có hiệu lực tại bất kỳ thời điểm nào trong toàn bộ vòng đời hệ thống.

1 hệ thống thường sẽ có 1 loạt những biểu đồ lớp – ko cần bao giờ hầu hết những biểu đồ lớp này cũng được nhập vào 1 biểu đồ lớp tổng thể duy nhất – và 1 lớp có thể tham dự vào nhiều biểu đồ lớp.

2.2.1.1 lớp có những thành phần sau

  • Tên lớp

  • Những thuộc tính

  • Những phương thức

2.2.2.Hợp tác giữa những lớp

  • Hợp tác (Affiliation)
    • Mối liên lạc ngữ nghĩa giữa 2 hay nhiều lớp chỉ ra sự hợp tác giữa những biểu lộ của chúng
    • Mối quan hệ về mặt cấu trúc chỉ ra những đối tượng của lớp này có kết nối có những đối tượng của lớp khác.
Xem Thêm  Chơi họ là gì? Những lưu ý lúc chơi họ? – Luật Đại Phong

Bội số quan hệ: là số lượng biểu lộ của 1 lớp liên quan tới 1 biểu lộ của lớp khác. Sở hữu từng hợp tác, có 2 bội số quan hệ cho 2 đầu của hợp tác.

Thí dụ:

Sở hữu từng đối tượng của Professor, có nhiều Course Choices có thể được dạy. Sở hữu từng đối tượng của Course Providing, có thể có 1 hoặc 0 Professor giảng dạy.

  • Biểu diễn bội số quan hệ:

Biểu diễn Ý nghĩa Unspecified 1 chính xác 1 0..* 0 hoặc nhiều * 0 hoặc nhiều 1..* 1 hoặc nhiều 0..1 0 hoặc 1 2..4 Specified Vary 2, 4..6 A number of, Disjoint Ranges

  • Kết tập (Aggregation)

    • Là 1 dạng đặc biệt của hợp tác mô hình hóa mối quan hệ toàn thể-bộ phận (whole-part) giữa đối tượng toàn thể và những phòng ban của nó.
    • Kết tập là mối quan hệ “là 1 phần” (“is a part-of”).
    • Bội số quan hệ được biểu diễn giống như những hợp tác khác
    • Cấu thành (Composition) là :1 dạng của kết tập có quyền sở hữu mạnh và những vòng đời trùng khớp giữa 2 lớp

    ▫ Complete sở hữu Half, tạo và hủy Half.

    ▫ Half bị bỏ đi lúc Complete bị bỏ, Half ko thể tồn tại ví dụ Complete ko tồn tại.

Sự khác nhau giữa Affiliation, Aggregation và Composition

  • Tổng quát hóa (Generalization)

    • Mối quan hệ giữa những lớp trong ấy 1 lớp chia sẻ cấu trúc và/hoặc hành vi có 1 hoặc nhiều lớp khác

    • Xác định sự phân cấp về mức độ trừu tượng hóa trong ấy lớp con kế thừa từ 1 hoặc nhiều lớp cha

      ▫ Đơn kế thừa (Single inheritance)

      ▫ Đa kế thừa (A number of inheritance)

    • Là mối liên lạc “là 1 loại” (“is a form of”)

Lớp trừu tượng và lớp cụ thể (Summary and Concrete Class)

2.2.3.Gói

Ví dụ bạn đang mô hình hóa 1 hệ thống lớn hoặc 1 lĩnh vực nghiệp vụ lớn, thì ko thể hạn chế khỏi, sẽ có nhiều phân loại khác nhau trong mô hình của bạn. Việc quản lý hầu hết những lớp có thể là 1 nhiệm vụ khó khăn, do vậy UML phân phối 1 phần tử tổ chức được gọi là gói. Những gói cho phép những nhà tạo mô hình tổ chức những phân loại của mô hình thành những vùng tên, là 1 kiểu giống như những thư phần trong 1 hệ thống tệp. Việc phân chia 1 hệ thống thành nhiều gói làm cho cho hệ thống trở nên dễ hiểu, đặc biệt là ví dụ từng gói đại diện cho 1 phần cụ thể của hệ thống

Xem Thêm  Les là gì và những thuật ngữ thường dùng cho Les?

Có 2 phương pháp để vẽ những gói trên sơ đồ. Ko có quy tắc để xác định xem ký pháp nào sẽ được dùng, ngoại trừ việc tuân theo phán xét riêng của bạn về việc ký pháp nào là dễ đọc những sơ đồ lớp mà bạn đang vẽ nhất. Cả 2 phương pháp sẽ khởi đầu bằng 1 hình chữ nhật lớn có 1 hình chữ nhật bé hơn (phiếu) nằm trên phía trên cùng bên trái nó, như trong . Nhưng nhà tạo mô hình cần quyết định phương pháp biểu lộ những thành viên của gói như thế nào, thí dụ như sau:

Ví dụ nhà tạo mô hình quyết định hiển thị những thành viên của gói bên trong hình chữ nhật lớn, thì hầu hết những thành viên4 sẽ cần được đặt trong hình chữ nhật ấy. Cũng vậy, tên của gói cần được đặt trong hình chữ nhật bé hơn của gói Ví dụ nhà tạo mô hình quyết định hiển thị những thành viên của gói bên bên cạnh hình chữ nhật lớn, thì hầu hết những thành viên sẽ được hiển thị trên sơ đồ cần cần được đặt trên bên bên cạnh hình chữ nhật đó. Để cho thấy phân loại nào thuộc về gói, thì 1 đường thẳng sẽ được vẽ từ từng phân loại tới 1 vòng tròn có dấu cùng (+) bên trong vòng tròn gắn liền có gói.

Thí dụ:

====> Như vậy trong phần này tôi đã giới thiệu có khách hàng về biểu đồ UML và 2 dạng biểu đồ cơ bản hay được dùng trong những tài liệu thiết kế hệ thống.Tại phần tiếp theo tôi sẽ tiếp tục giới thiệu tới khách hàng 3 dạng biểu đồ tiếp theo là:

  • Biểu đồ trạng thái (State Diagram)
  • Biểu đồ tuần tự động (Sequence Diagram)
  • Biểu đồ hoạt động (Energetic Diagram)

3.Công cụ vẽ biểu đồ UML

  • Công cụ offline

    • Diagram obtain tại đây: sentayho.com.vn/
  • Công cụ on-line

    • https://cacoo.com/diagrams/
    • http://creately.com/Draw-UML-and-Class-Diagrams-On-line

4.Tài liệu tham khảo

Khách hàng có thể xem những qui định chuẩn trong thiết kế biểu đồ UML tại đây:

  • http://www.tutorialspoint.com/uml/uml_standard_diagrams.htm
  • https://www.smartdraw.com/uml-diagram/
  • http://www.holub.com/goodies/uml/

Hẹn gặp lại khách hàng trong bài viết tiếp theo!