đặt vấn đề hướng nghiên cứu tiếp theo. Luận văn thạc sĩ z Phương pháp hướng đối tượng và phân tích thiết kế anh ninh hệ thống 11 BẢNG ĐỐI CHIẾU THUẬT NGỮ ANH VIỆT Tiếng Việt English Giải thích Use case Trường hợp sử dụng Diagram Biểu đồ Activity dia- Biểu đồ hoạt gram động Sequence dia- Biểu đồ trình tự gram Use case dia- Biểu đồ trường gram hợp sử dụng Actor Tác nhân Streotype Đặc trưng Security An ninh Module Đơn thể Một đơn vị chương trình Aspect Khía cạnh Một mối quan tâm nào đó Cargo Hàng hoá Danh từ dùng trong ngành vận chuyển để chỉ vật, sản phẩm được đóng gói để vận chuyển Container Công-ten-nơ Thùng chứa hàng dùng trong vận chuyển Invoice (I/V) Hoá đơn Packing list Bảng liệt kê (P/L) đóng gói hàng Purchase order Đơn đặt hàng (P/O) Bill of lading Vận đơn Giấy tờ của chủ tàu giao cho bên thuê vận (B/L) chuyển xác nhận người sở hữu hàng Tracking Theo dõi Quá trình theo dõi và giám sát hàng hoá trên đường vận chuyển Bảng 1.1: Bảng đối chiếu thuật ngữ Anh-Việt Luận văn thạc sĩ z Phương pháp hướng đối tượng và phân tích thiết kế anh ninh hệ thống 12 BẢNG CÁC TỪ VIẾT TẮT Viết tắt Tiếng Việt English UC Trường hợp sử dụng Use case AOP Lập trình hướng khía cạnh Aspect oriented program- ming I/V Hóa đơn Invoice P/L Đóng gói Packing list P/O Đơn hàng Purchase order B/L Vận đơn Bill of lading Bảng 1.2: Bảng các từ viết tắt Luận văn thạc sĩ z Chương 2 KIẾN THỨC TỔNG QUAN Nội dung chương này trình bày tóm tắt một số kiến thức tổng quan về phương pháp phân tích, đặc tả, thiết kế hệ thống theo phương pháp hướng đối tượng. Trước hết ta sẽ xem xét một số phương pháp phân tích thiết kế hệ thống. Phương pháp phân tích thiết kế hệ thống 2.
Phương pháp hướng chức năng Phương pháp hướng chức năng là phương pháp phân tích thiết kế hệ thống ra đời sớm. Đặc trưng của phương pháp này là hệ thống cần xây dựng được phân tích từ trên xuống như hình 2.1 Đầu tiên, chúng ta sẽ hình dung hệ thống như là một chức năng lớn, chức năng lớn này sẽ được chia thành các chức năng nhỏ hơn. Các chức năng tiếp tục được phân nhỏ tới mức nào đó thì dừng lại và có thể thiết kế thành các thủ tục. Tiếp tới ta đi phân tích các cấu trúc dữ liệu, biểu đồ luồng dữ liệu, từ mức đỉnh, tới mức chi tiết, tới mức vật lý, và tiến hành thiết kế cơ sở dữ liệu và lập trình [9] [11] [8].
Phương pháp hướng chức năng và tiếp cận từ trên xuống mặc dù đã có những thành công và có rất nhiều hệ thống được xây dựng theo phương pháp này, nhưng việc sử dụng rộng rãi phương pháp hướng chức năng cũng cho thấy nó bộc lộ ra những hạn chế sau • Khó mở rộng, thay đổi Do ngay từ đầu ta đã hướng hệ thống theo những chức năng nhất định, và toàn bộ sự phân tích sau đó sẽ đi theo hướng triển khai chi tiết chức năng mức đỉnh này. Tất cả các cấu trúc dữ liệu và giải thuật xây dựng trên cơ sở đáp ứng chức năng cao nhất của chương trình, nên nếu muốn bổ sung thay đổi chức z13 Phương pháp hướng đối tượng và phân tích thiết kế anh ninh hệ thống 14 Hình 2.1: Phân rã chức năng hệ thống năng thì rất khó khăn. • Khó kế thừa mã Vì lập trình theo hướng thủ tục nên việc kế thừa mã rất khó khăn, mỗi thủ tục chỉ giao tiếp với bên ngoài thông qua đầu vào và đầu ra đã quy định. • Khó kiểm soát Mặc dù cấu trúc dữ liệu gắn với xử lý nhưng nó vẫn không đóng gói ngay với xử lý (thủ tục tách rời khỏi cấu trúc dữ liệu liên quan), và có thể bị thay đổi bởi một thủ tục khác.
• Khó áp dụng cho hệ thống lớn Nếu chúng ta thử phân tích một hệ thống xử lý văn bản, thì có thể hình dung được chức năng lớn của nó, nhưng nếu giả sử chúng ta phải xây dựng hệ thống quản lý sản xuất, thì chức năng lớn nhất của nó sẽ khó có thể nhìn ra để phân rã ngay từ đầu. Phương pháp hướng đối tượng Những hạn chế của phương pháp hướng chức năng, cùng với nhu cầu xây dựng các hệ thống ngày càng lớn, đã thúc đẩy những nghiên cứu cải tiếp phương pháp phân tích và thiết kế các hệ thống thông tin dẫn tới sự ra đời của phương pháp hướng đối tượng. Khác với phương pháp hướng chức năng tập trung ngay từ đầu trả lời câu hỏi: “Chức năng lớn nhất của hệ thống là gì”, và từ đó phân rã để xây dựng hệ thống xoay quanh chức năng Luận văn thạc sĩ z Phương pháp hướng đối tượng và phân tích thiết kế anh ninh hệ thống 15 Hình 2.2: Các đối tượng tham gia tạo nên một chức năng lớn nhất đó, phương pháp hướng đối tượng sẽ trả lời các câu hỏi như: “Hệ thống gồm những ai/cái gì tham gia”, “Những tác nhân đó làm gì với hệ thống”, “Hệ thống quản lý những đối tượng gì”, “Hành vi và thuộc tính của những đối tượng đó ra sao”, và cuối cùng mới là hệ thống sẽ có những chức năng gì, trên cơ sở của các đối tượng được xây dựng ra trong hệ thống (Hình 2. Để phân tích, đặc tả, thiết kế các hệ thống theo phương pháp hướng đối tượng, một hệ thống chuẩn các ký hiệu (hình khối, đường vẽ) đã được xây dựng.
Một trong những ngôn ngữ mô hình hóa phổ biến là UML (Unified Modeling Language) Giới thiệu UML UML là một chuẩn quy định các ký hiệu, các biểu đồ, theo một ý nghĩa và trình tự xác định để phân tích, đặc tả, thiết kế hệ thống theo phương pháp hướng đối tượng. Ngoài lợi điểm của việc chuẩn hóa ký hiệu, thì do sự phát triển rất mạnh và ứng dụng rộng rãi của UML, nên nó nhận được sự quan tâm của nhiều học giả, và có nhiều phương pháp tiếp cận, cũng như công cụ được xây dựng để kiểm chứng mô hình UML được xây dựng [7]. Điều đó đảm bảo một chất lượng phân tích thiết kế tốt khi sử dụng UML. UML có một số khái niệm đặc trưng như sau: Luận văn thạc sĩ z Phương pháp hướng đối tượng và phân tích thiết kế anh ninh hệ thống 16 Tác nhân: tác nhân(actor) là một người thao tác với hệ thống, hoặc một hệ thống khác có tương tác với hệ thống cần xây dựng.
Ví dụ: nếu ta đang xây dựng hệ thống quản lý sản xuất, và người lập kế hoạch có sử dụng hệ thống, thì người lập kế hoạch là một tác nhân. Nếu hệ thống quản lý xe tải có tương tác với hệ thống quản lý sản xuất, thì hệ thống quản lý xe tải cũng là một tác nhân. Ký hiệu: Kí hiệu gồm các hình khối, đường nét cơ bản và có ý nghĩa xác định trong UML. Phần sau sẽ trình bày kỹ hơn về một số ký hiệu thường dùng của UML Biểu đồ: Biểu đồ (diagram) gồm một nhóm ký hiệu diễn đạt một mục tiêu nhất định.
UML định nghĩa sẵn các biểu đồ để chúng ta sử dụng trong phân tích thiết kế hệ thống. Phần sau sẽ trình bày một số biểu đồ thông dụng của UML. Đặc trưng : Đặc trưng («stereotype») là một cách để mở rộng ý nghĩa của các ký hiệu của UML. Bằng cách gán một đặc trưng khác cho một ký hiệu có sẵn của UML, ta có thể bổ sung ý nghĩa, hoặc định nghĩa mới ký hiệu cho UML để sử dụng trong một tình huống cụ thể.
Hồ sơ UML : Hồ sơ UML (UML profile) là một tập các mở rộng, gồm các đặc trưng («stereotype») và các ký hiệu mở rộng, phục vụ đặc tả một lớp bài toán hoặc một lớp mối quan tâm nào đó. Một số biểu đồ tiêu biểu của UML Biểu đồ hoạt động : Biểu đồ hoạt động (activity diagram) là một trong những biểu đồ rất thông dụng của UML. Biểu đồ này diễn đạt một chuỗi các hoạt động của một hoặc nhiều tác nhân trong một kịch bản nào đó (Hình 2. Trong biểu đồ hoạt động (Hình 2.3, tác nhân A bắt đầu kịch bản này, sau đó tùy theo tình huống mà quyết định hành động 1 hoặc 2.
Sau khi xong một trong hai hoạt động trên, tác nhân tiếp tục thực hiện hoạt động 3. Sau đó có 2 quá trình đồng thời (5 và 4). Sau các hoạt động đó xong, tác nhân quan về hành động 6 và kết thúc. Một số ký hiệu trong biểu đồ hoạt động Biểu đồ hoạt động sử dụng một số ký hiệu như trong bảng 2.
Tất nhiên đây không phải là tất cả. Luận văn thạc sĩ z Phương pháp hướng đối tượng và phân tích thiết kế anh ninh hệ thống 17 Hình 2.3: Biểu đồ hoạt động Luận văn thạc sĩ z Phương pháp hướng đối tượng và phân tích thiết kế anh ninh hệ thống 18 Ký hiệu Giải thích Hoạt động: là một hành động nếu đây là tác nhân người, là một xử lý nếu đây là tác nhân máy Điểm bắt đầu của chuỗi hoạt động, mỗi biểu đồ hoạt động chỉ có một điểm bắt đầu Điểm kết thúc của chuỗi hoạt động, mỗi biểu đồ hoạt động có thể có nhiều điểm kết thúc Điểm quyết định và rẽ nhánh Điểm chia tách thành các hoạt động song song Điểm nhập lại của các hoạt động song song Bảng 2.1: Một số ký hiệu trong biểu đồ hoạt động Ký hiệu Giải thích Tác nhân Trường hợp sử dụng Bảng 2.2: Một số ký hiệu trong biểu đồ trường hợp sử dụng Biểu đồ trường hợp sử dụng : Biểu đồ trường hợp sử dụng (use case diagram) diễn đạt mối quan hệ giữa các tác nhân với các trường hợp sử dụng mà tác nhân đó tham gia. Biểu đồ này cho ta biết một tác nhân có thể tham gia vào những trường hợp sử dụng nào. Trong biểu đồ trường hợp sử dụng ở trên, ta thấy tác nhân Actor0 có thể tham gia vào 5 trương hợp sử dụng là “Tạo đơn hàng”, “Tìm đơn hàng”, “Sửa đơn hàng”, “Xem đơn hàng” và “Xóa đơn hàng”.
Biểu đồ trường hợp sử dụng không nói lên thứ tự mà tác nhân thao tác với hệ thống, nó chỉ cho biết rằng tác nhân có thể tham gia vào các trường hợp sử dụng nào đó. Một số ký hiệu trên biểu đồ trường hợp sử dụng Biểu đồ trường hợp sử dụng có sử dụng một số ký hiệu như trong bảng 2.2 Trong biểu đồ trường hợp sử dụng (Hình 2.4) Luận văn thạc sĩ z Phương pháp hướng đối tượng và phân tích thiết kế anh ninh hệ thống 19 Hình 2.4: Biểu đồ trường hợp sử dụng Luận văn thạc sĩ z Phương pháp hướng đối tượng và phân tích thiết kế anh ninh hệ thống 20 Hình 2.