intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Đồ án xây dựng ứng dụng J2EE với Rational Rose và UML - 1

Chia sẻ: Le Nhu | Ngày: | Loại File: PDF | Số trang:35

79
lượt xem
10
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

LỜI NÓI ĐẦU Nếu như trước đây phần mềm (software) được bán kèm theo máy tính, phần mềm coi như được cho không thì ngày nay hoàn toàn khác, giá cả phần cứng hạ xuống và phần mềm dần dần trở nên thống lĩnh. Máy tính trở nên hữu dụng trong mọi mặt của cuộc sống, sản xuất kinh doanh, khoa học kỹ thuật, quản lý, giáo dục ... Để có thể áp dụng máy tính vào những nhu cầu của đời sống xã hội ta phải có các chương trình điều khiển, quản lý, tính toán và thực hiện...

Chủ đề:
Lưu

Nội dung Text: Đồ án xây dựng ứng dụng J2EE với Rational Rose và UML - 1

  1. LỜI NÓI ĐẦU Nếu như trước đây phần mềm (software) được bán kèm theo máy tính, phần mềm coi nh ư được cho không thì ngày nay hoàn toàn khác, giá cả phần cứng hạ xuống và phần mềm dần dần trở n ên thống lĩnh. Máy tính trở n ên hữu dụng trong mọi mặt của cuộc sống, sản xuất kinh doanh, khoa học kỹ thuật, quản lý, giáo dục ... Để có thể áp dụng máy tính vào những nhu cầu của đời sống xã hội ta phải có các chương trình điều khiển, quản lý, tính toán và thực hiện các chức năng như mong muốn m à ta gọi đó là ph ần mềm. Quy trình để sản xuất được một phần mềm gồm nhiều công đoạn từ phân tích thiết kế, đặc tả yêu câu khách hàng cho tới lập trình, bảo trì...Mỗi công đoạn là cả quá trình đòi hỏi kỹ sư ph ần mềm phải khảo sát tỉ mỉ, chính xác trong từng thao tác. Chất lượng phần mềm do khâu phân tich thiết kế quyết định là chủ yếu, do vậy phân tích thiết kế và đặc tả các yêu cầu là giai đoạn quan trọng nhất. Nói đến công nghệ phần mềm chúng ta phảI kể đến các hệ thống phân tán. Trong thời kỳ phát triển mạnh của mạng toàn cầu – Internet, các ứng dụng phân tán phát triển rất mạnh và mang tính cấp thiết. Nó đem lại lợi ích vô cùng to lớn cho con người. Nhằm tìm hiểu theo h ướng phát triển này, đồ án của em tiếp cận một công nghệ xây dựng ứng dụng phân tán, đa tầng có tính bảo mật cao. Đó là công nghệ J2EE- Java 2 Platform, Enterprise Edition, nó tương đối mới. Cùng với công nghệ này, ngôn ngữ mô h ình thu ần nhất(UML- Unified Modeling Language) là ngừời bạn đồng hành để mô hình hóa, hiện thực hoá ứng dụng trong quá trình phân tích và thiết kế hướng đối tượng. Trong đồ án tốt nghiệp em phát triển ứng dụng J2EE với UML (Unified Modeling Language) và Rational Rose. Trong th ời gian ngắn cũng như kh ả năng,
  2. trong đồ án còn nhiều sai sót, rất mong sự chỉnh sửa của thầy hướng dẫn và sự góp ý từ phía người đọc. Một lần nữa em xin cảm ơn th ầy Nguyễn Thanh Tùng đã tận tình hướng dẫn cho em ho àn thành đồ án này. Nha Trang tháng 07/ 2003 Sinh viên thực hiện: Lê Quang Dung PHẦN I: GIỚI THIỆU CÔNG NGHỆ CHƯƠNG 1: GIỚI THIỆU VỀ PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG VỚI UML Mô hình hóa và thiết kế hướng đối tượng là một cách suy nghĩ về vấn đề sử dụng các mô hình được tổ chức xung quanh các khái niệm thế giới thực. Cấu trúc nền tảng là đối tư ợng, nó kết hợp cả cấu trúc dữ liệu và hành vi vào trong một thực thể đơn. Các mô hình hướng đối tượng là có ích cho việc hiểu vấn đề, việc trao đổi với người dùng, mô hình hoá các tổ chức kinh doanh, chuẩn bị tài liệu và thiết kế chương trình cùng cơ sở dữ liệu. 1.1. Các nguyên tắc cơ b ản của OO-Object Orientation 1.1.1. Trừu tượng hóa (Abstraction) Trừu tượng hóa bao gồm việc tập trung vào các khía cạnh bản chất cố hữu của một thực thể và lờ đi các đặc tính phụ của nó. Trong phát triển hệ thống, điều này có ngh ĩa là tập trung vào đối tượng là cái gì và làm cái gì, trước khi quyết định nó được cài đ ặt như th ế n ào. Sử dụng trừu tượng hoá giữa quyền thực hiện các quyết định lâu dài nhằm tránh các ràng buộc vội vã tới các chi tiết. Việc sử dụng trừu tượng hóa trong khi phân tích có nghĩa là chỉ giải quyết với các khái niệm lĩnh vực ứng dụng, không thực hiện các quyết định thiết kế và cài đặt trước khi hiểu vấn đề.
  3. Sử dụng chính xác trừu tượng hoá cho phép cùng một mô hình được sử dụng cho cả phân tích, thiết kế mức cao, cấu trúc ch ương trình, cấu trúc dữ liệu và tài liệu. 1.1.2. Bọc kín (Encapsulation) Bọc kín (che giấu thông tin) bao gồm việc phân tách các khía cạnh bên ngoài của đối tượng, từ các chi tiết cài đặt bên trong của đối tượng. Bọc kín ngăn ngừa một chương trình trở n ên quá phụ thuộc lẫn nhau đến nỗi một thay đổi nhỏ cũng có các hiệu ứng lớn. Việc cài đặt một đối tượng có thể bị thay đổi m à không ảnh h ưởng đến các ứng dụng có dùng đ ến nó. Việc bọc kín là không duy nhất đối với các ngôn ngữ hướng đối tượng, nhưng khả năng kêt hợp cấu trúc dữ liệu và hành vi trong một thực thể đơn thực hiện việc bọc kín là k ỳ diệu hơn so với các ngôn ngữ truyền thống. 1.1.3. Kết hợp dữ liệu và hành vi(data - behavior) Nơi gọi một thao tác không cần xem xét việc thực hiện thao tác đã cho tồn tại như thế nào. Đa h ình đ ã di chuyển gánh nặng của việc quyết định sử dụng cài đặt nào từ việc gọi m ã tới phân cấp lớp. Trong một hệ thống hư ớng đối tượng, phân cấp cấu trúc dữ liệu là đồng nhất với phân cấp kế thừa thao tác. 1.1.4. Phân chia Kỹ thuật hư ớng đối tượng đề xướng việc phân chia tại vài mức khác nhau. Việc kế thừa cả cấu trúc dữ liệu và hành vi cho phép cấu trúc chung được chia sẻ trong vài lớp con giống nhau mà không dư thừa. Việc phân chia mã sử dụng kế thừa là một trong những tiến bộ chính của ngôn ngữ hư ớng đối tượng. Phát triển hướng đối tượng không chỉ cho phép chia sẻ thông tin trong ứng dụng m à còn đưa ra triển vọng của việc sử dụng lại các thiết kế và mã trong các đề
  4. án tượng lai. Phát triển hướng đối tượng cung cấp các công cụ như là trừu tượng bọc kín, kế thừa để xây dựng các thư viện của các th ành ph ần có thể dùng lại được. 1.2. Các khái niệm cơ bản của hướng đối tượng Khi nói về hướng đối tượng, các khái niệm cơ bản sau đây cần đư ợc hiểu rõ:  Đối tượng (Object)  Lớp (Class)  Thuộc tính (Atribute)  Thao tác (Operation)  Giao tiếp – đa hình (Interface - Polymorphism)  Thành ph ần (Component)  Đóng gói (Package)  Hệ thống con (Subsystem)  Quan h ệ (Relationship) Tất cả các khái niệm này được trình bày trong ph ần “tổng quan về UML” ở phần sau. 1.3. Phát triển hướng đối tượng là gì? Phát triển hướng đối tượng là một cách suy nghĩ mới về phần mềm đặt cơ sở trên những khái niệm trừu tượng đang tồn tại trong thế giới thực. Bản chất của việc phát triển hướng đối tư ợng là nhận biết và tổ chức các khái niệm thuộc lĩnh vực ứng dụng. 1.3.1. Các khái niệm mô hình hoá
  5. Các ngôn ngữ lập trình hướng đối tư ợng là có ích trong việc loại bỏ các hạn ch ế do tính không mềm dẻo của các ngôn ngữ lập trình truyền thống. Phát triển h ướng đối tư ợng là quá trình nhận thức độc lập với ngôn ngữ lập trình cho đến các b ước cuối cùng. Phát triển hướng đối tư ợng là hướng suy nghĩ mới và không là kỹ thuật lập trình. Lợi ích của vấn đề n ày là giúp các chuyên gia, phát triển viên và khách hàng biểu lộ các khái niệm trừu tượng một cách rõ ràng và truyền gởi chún g tới n ơi khác. Nó có thể phục vụ như là một trung gian cho việc xác đ ịnh, phân tích, lập tài liệu và giao tiếp cũng như việc lập trình. 1.3.2. Phương pháp hướng đốI tư ợng Chúng ta đưa ra phương pháp phát triển hướng đối tượng và các ký hiệu đồ họa cho việc biểu diễn các khái niệm hướng đối tượng. Ph ương pháp bao gồm việc xây d ựng một mô hình của lĩnh vực ứng dụng, sau đó thêm các chi tiết vào nó trong khi thiết kế hệ thống. Có nhiều phương pháp phân tích và thiết kế hướng đối tượng khác nhau – tiêu biểu là các phương pháp Booch của Grady Booch, phương pháp OMT (Object Modeling Technique) của James Rumbaugh, phương pháp OOSE (Object Oriented Software Engineering) của Ivar Jacobson. Nhìn chung, một cách chắc chắn rằng các phương pháp này đều bao gồm các bư ớc: phân tích, thiết kế hệ thống, thiết kế đối tượng, cài đặt. Mặc dù vậy, mỗi phương pháp có cách thức mô h ình hoá khác nhau. Trong đồ án này, em sẽ trình bày phương pháp hướng đối tượng với việc sử dụng ký pháp của UML để mô hình hoá. 1.4. Lợi ích và sức mạnh của OO  Cách tiếp cận hướng chức năng
  6. Trước kia chúng ta thư ờng hay sử dụng phương pháp hướng chức năng để xây dựng hệ thống. Với phương pháp này, d ữ liệu và chức năng(h ành vi hay xử lý) được tách ra riêng rẽ. Ở đó, chức năng được coi như là những hành vi có tính chủ động, còn dữ liệu là bộ phận nắm giữ thông tin một cách bị động và được tác động bởi các chức năng. Hệ thống đ ược chia th ành các ch ức năng nhỏ dần cho tới khi nó có thể dễ dàng cho việc mã hoá, còn dữ liệu đư ợc gửi giữa các chức năng n ày. Một hệ thống được phát triển theo cách này thường trở nên khó b ảo trì. Một vấn đề quan trọng với phương pháp hướng chức năng là tất cả các chức năng phải biết làm thế nào d ữ liệu đ ược lưu trữ, cấu trúc dữ liệu của nó. Các kiểu khác nhau của dữ liệu có những định dạng khác nhau, vì th ế việc mã hoá ch ương trình trở nên rắc rối. Hơn nữa, khi ta thay đổi cấu trúc dữ liệu, dẫn đến ta phải thay đổi tất cả các chức năng liên quan đến cấu trúc này. Hệ thống đ ược phát triển theo ph ương pháp này trở nên có tính ổn định kém. Một chút thay đổi sẽ gây n ên hậu quả nghiêm trọng. Một vấn đề khác đối với phương pháp hướng chức năng là chúng ta thường không có những tư duy một cách tự nhiên về cấu trúc của vấn đề nó được cấu tạo như thế n ào. Do vậy việc xây dựng hệ thống trở nên khó khăn hơn. Một nguyên nhân khác đối với ph ương pháp hướng chức năng là hệ thống rất khó để sửa đổi, tính khả chuyển kém, nhạy cảm với sự thay đổi, vì dữ liệu và hành vi b ị tách riêng.  Cách tiếp cận hướng đối tượng Việc phát triển hệ thống theo cách tiếp cận hướng đối tư ợng sẽ mang lại cho ta nhiều lợi ích, tiêu biểu là:
  7. - Giảm chi phí bảo trì: b ởi vì hầu hết các xử lý trong hệ thống đư ợc bọc kín - dữ liệu và hành vi được gom chung lại, các h ành vi có thể được sử dụng lại và kết hợp thành các hành vi m ới. - Mô hình thế giới thực: hệ thống hư ớng đối tư ợng là đ ịnh hướng để mô hình thế giới thực. Các đối tượng được tổ chức th ành các lớp đối tượng, và các đối tượng được kết hợp với các hành vi. Mô hình dựa trên đối tượng hơn là dựa trên dữ liệu và xử lý. Cách thức này gần gũi với tư duy con người, do vậy việc xây dựng dễ d àng hơn. - Tính tin cậy cao: bởi vì các hành vi m ới được xây dựng từ các đối tư ợng đã có sẵn. - Khả năng sử dụng lại m ã nguồn cao: bởi cơ chế kết hợp dữ liệu với hành vi vào một đối tư ợng riêng biệt, cơ chế đóng gói, cơ ch ế bọc kín. Do vậy, dễ dàng cho việc kế thừa, hay sử dụng lại. 1.5. Tổng quan về UML UML đư ợc viết tắt của cụm từ Unified Modeling Language, tạm dịch là ngôn ngữ mô hình hợp nhất. UML là th ế hệ kế vị của làn sóng phân tích và thiết kế hư ớng đối tượng (OOA & D) xuất hiện trong những năm đầu 80 và cuối những năm 90. UML phát triển trên sự hợp nhất trong các phương pháp của tác giả Booch, Rumbaugh (OMT) và Jacopson, và đ ã được chuẩn hóa bởi OGM.
  8. Hình 1.1: sự hợp nhất của UML UML được gọi là một ngôn ngữ mô hình hóa dùng đ ể đặc tả, trực quan hóa dùng đ ể xây dựng và làm sưu liệu cho các hệ thống phần mềm  Mô hình hóa : giúp cho chúng ta hiểu được thế giới thực, mô hình hóa thế giới thực để có thể hiểu được những đặc trưng, tính toán các thông số và dự đoán kết quả sẽ đạt được.  Ngôn ngữ : Chức năng của UML như là một phương tiện để bày tỏ và trao đổi tri thức (giao tiếp)  Trực quan hóa hệ thống : được sử dụng để diễn tả hệ thống một cách trực quan trước khi nó được thực hiện.  Xây dựng hệ thống : được sử dụng để hiện thực hóa hệ thống.  Làm sưu liệu : đư ợc sử dụng để nắm bắt kiến thức về hệ thống thông qua vòng đời của nó. UML không phải là :  Một ngôn ngữ lập trình trực quan, mà nó là một ngôn ngữ mô hình.
  9.  Một công cụ, mà nó là một ngôn ngữ đặc tả mô h ình  Một xử lý, m à nó cho phép xử lý UML thích hợp với việc giải quyết vấn đề hướng đối tượng. Bất kì ai quan tâm đến UML đều quen thuộc với nguyên lý cơ b ản về việc giải quyết vấn đề hướng đối tượng, bắt đầu với việc xây dựng mô h ình. Mô hình (model ) là sự trừu tư ợng hoá vấn đề cơ b ản. Phạm vi (domain ) là thế giới thực mà vấn đề đó mang đến. Mô hình chứa các đối tượng (objects) tác động lẫn nhau bằng cách gởi các thông tin (messages) khác nhau. Nếu một đối tượng đang tồn tại th ì đối tượng đó có thuộc tính (attributes) và có các hành vi (behaviors hoặc operations). Giá trị của các thuộc tính trong đối tượng được xác định bởi trạng thái của nó (state). Lớp (Classes) là b ảng thiết kế cho các đối tượng. Lớp bao gồm các thuộc tính (dữ liệu) và các hành vi (phương th ức hoặc hàm) trong một thực thể riêng biệt đơn giản. Các đối tượng là các thể hiện (instance) của các lớp. 1.5.1. Các đặc điểm của UML Bốn đặc điểm chính của UML để có thể phân biệt với các ngôn ngữ mô hình khác :  Đa năng (general-purpose)  Kh ả năng ứng dụng rộng rãi (broadly applicable)  Được hỗ trợ bởi các công cụ (tool- supported)  Là một chuẩn công nghiệp (industrial standerdized) 1 .5.2 Kiến trúc tổng quát của UML a)Các mô hình .
  10. Xét về đặc điểm tĩnh, các mô hình n ắm bắt một số đặc điểm và hành vi của hệ thống. Xét về đặc điểm động, nắm bắt các đặc điểm của hệ thống, về cơ bản chúng lưu trữ các tri thức về mặt ngữ nghĩa. b) Cấu trúc View Ngày nay các hệ thống phần mềm càng trở nên phức tạp, khó khăn do vậy ta không thể mô hình hóa chúng chỉ bằng một lư ợc đồ hay mô hình. Hệ thống phải được phân tích dưới nhiều góc độ khác nhau. UML đưa ra định nghĩa về cấu trúc View. Mỗi View là m ột thể hiện của hệ thống dưới một khía cạnh n ào đó. Mỗi View có thể bao gồm nhiều loại lược đồ khác nhau (xem h ình 1.2)  Use Case View hay còn gọi là Use model view thể hiện các vấn đề về giải pháp liên quan đến chức năng tổng quát của hệ thống.  Logical View hay còn gọi là Structure Model view hoặc Static view: thể hiện các vấn đề liên quan đ ến cấu trúc thiết kế hệ thống. Hình 1.2 : cấu trúc View trong UML
  11.  Process View hay còn gọi là bihavioral model view, Dynamic hay Collaboration View th ể hiện các vấn đề liên quan đến xử lý giao tiếp và đồng bộ trong hệ thống.  Deployment View hay còn gọi là Environment model View : th ể hiện các vấn đề liên quan đến việc triển khai hệ thống.  Một số model View khác có thể đ ược sử dụng khi cần thiết. c) Các lược đồ. Lược đồ miêu tả các tri thức về mặt cú pháp được miêu tả quanh cấu trúc, Hình 1.3 Hình 1.3 : Các lược đồ của UML  Use Case View
  12. Lư ợc đồ người sử dụng (Use Case Diagram) : Mô tả các chức năng của hệ thống. Lược đồ Use Case diễn tả các Use Case trong hệ thống và các quan hệ ràng buộc…  Logical View Lư ợc đồ lớp (Class Diagram) : mô tả cấu trúc tĩnh của hệ thống thể hiện các phần mà hệ thống có thể xử lý được. Lư ợc đồ đối tượng (Object Diagram): mô tả cấu trúc tĩnh của hệ thống tại một thời điểm, nó có thể xem như một thể hiện của lư ợc đồ lớp.  Process View Lư ợc đồ tuần tự ( Sequence Diagram ) :Mô tả sự tương tác giữa các th ành phần trong hệ thống theo thời gian. Lư ợc đồ cộng tác (Collaboration Diagram) : mô tả sự tương tác giữa các th ành phần trong hệ thống theo thời gian và không gian. Lư ợc đồ trạng thái (State Diagram) : mô tả trạng thái, sự hồi đáp của một thành phần trong hệ thống khi có những tác động vào nó. Lư ợc đồ hoạt động (Activity Diagram) : mô tả sự hoạt động của các thành phần trong hệ thống.  Implementation View Lư ợc đồ thành phần (Component) : mô tả tổ chức của các thành phần thực thi trong hệ thống.  Invironmen View
  13. Lư ợc đồ triển khai (Deployment Diagram) : mô tả cấu hình của các thành phần môi trường và trình tự của các thành phần thực thi trên đó. 1.5.3. Các lược đồ trong UML Trọng tâm của việc giải quyết vấn đề hướng đối tượng là xây dựng một mô hình. Mô hình trừu tượng hóa các chi tiết cần thiết của vấn đề cơ bản về thế giới thực. Trọng tâm của UML được thể hiện qua 8 loại lược đồ khác nhau :  Use case diagrams (Lược đồ Use case)  Class diagrams (Lược đồ lớp)  Sequence diagrams (Lược đồ tuần tự)  Collaboration diagrams (Lược đồ cộng tác)  Statechart diagrams (Lược đồ trạng thái)  Activity diagrams (Lược đồ hoạt động)  Component diagrams (Lược đồ th ành phần)  Deployment diagrams (Lược đồ triển khai) 1.5.3.1. Use case diagrams (Lược đồ use case) Use case diagrams mô tả hệ thống làm gì từ quan điểm của người quan sát tổng quan. Điều quan trọng là nhấn mạnh hệ thống làm gì h ơn là làm như thế n ào. Lược đồ Use case quan hệ gần gũi đến các sự kiện. Sự kiện (scenario) là những gì xảy ra khi ai đó tương tác với hệ thống. Đây là sự kiện về một khoa y học: một bệnh nhân gọi phòng khám để hẹn gặp cho việc kiểm tra hàng năm. Người tiếp tân tìm thời gian trống gần nhất trong sổ hẹn gặp và lịch hẹn gặp cho thời qian đó.
  14. Use case là tập hợp các sự kiện về mộ t công việc đơn giản hoặc mục đích của nó. actor là người tham gia vào các sự kiện trong phiên làm việc. Actor đóng vai trò là người hoặc đối tượng hoạt động. Hình dưới là mô tả use case là Make Appointment, actor là Patient. Mối liên hệ giữa use case và actor là mội quan hệ kết hợp ( communication association ) (gọi tắt là communication ). Hình 1.4: actor và use case Actor có hình que, Use case có hình bầu dục, mối quan hệ là đường thẳng liên kết giữa actor và use case. Lư ợc đồ use case là tập hợp các actor, các use case, các mối quan hệ giữa chúng. Hình vẽ dưới cho ta 4 use case và 4 actor. Chú ý rằng một use case đơn giản có thể có nhiều actor. Hình 1.5: lược đồ use case Lược đồ Use case hổ trợ 3 phạm vi sau :
  15.  Xác định các đặc trưng : Use case mới thường th ường phát sinh các yêu cầu m ới khi hệ thống phân tích và đưa ra các mô h ình.  Giao tiếp với clients : các kí hiệu đơn giản giúp cho lược đồ use case có thể giao tiếp với client.  Phát sinh các trường hợp test : tập hợp các sự kiện cho một use case có thể đề nghị các trường hợp cho các sự kiện n ày. Chi tiết lư ợc đồ Use case Lư ợc đồ Use case phát ho ạ tổng quan của hệ thống. Mỗi lược đồ Use case có các actor, các use case, các quan hệ. Một lược đồ Use case đ ơn giản được mở rộng với các đặc trưng thêm vào để hiển thị thông tin hơn (hình 1.6). Các đặc trưng của lược đồ Use case  system boundaries (kết hợp hệ thống)  generalizations (tổng quát hoá)  includes (bao hàm)  extensions (mở rộng)
  16. Hình 1.6: lược đồ use case mở rộng Lư ợc đồ Use case mở rộng lược đồ với các đặc trưng thêm vào. Hình chữ nhật kết hợp hệ thống (system boundary ) phân chia hệ thống từ các actor m ở rộng. Tổng quát hoá (generalization) use case biểu diễn rằng một use case là một loại đặc biệt đơn giản khác.Pay Bill là use case cha và Bill Insurance là use case con .Use case con được thay thế bởi use case cha bất cứ khi n ào cần thiết. Sự tổng quát hoá xuất hiện như một dòng với mũi tên hình tam giác ở đầu h ướng về use case cha. Quan h ệ bao hàm ( Include ) quản lý use case thành use case thêm vào.Quan hệ bao hàm hữu ích khi cùng use case được phân chia thành hai use case khác nhau. Cả Make Appointment và Request Medication quan hệ bao hàm với như công việc con. Trong lược đồ, kí hiệu bao h àm là đường gạch đứt, bắt đầu ở use case cơ sở và kết
  17. thúc với mũi tên đến use case bao h àm. Đường gạch đứt được gán nhãn . Quan h ệ mở rộng (extend) chỉ ra một use case là một biến đổi của use case khác. Kí hiệu quan hệ mở rộng là đường gạch đứt, có nh ãn là và một mũi tên hướng về use case cơ sở. Điểm mở rộng (extension point) được xác định khi use case mở rộng là thích hợp và được viết b ên trong use case cơ sở. 1.5.3.2. Class diagrams (Lược đồ lớp) Class diagram đưa ra tổng quan hệ thống bằng cách hiển thị các lớp và quan hệ giữa chúng. Lược đồ lớp là lược đồ tĩnh, hiển thị những gì tác động nhưng không xảy ra những gì khi chúng tác động. Lư ợc đồ lớp dưới đây mô tả một khách hàng đ ặt h àng. Lớp chính là Order, kết hợp với nó là Customer và Payment. Payment là một trong 3 loại : Cash, Check, hoặc Credit. Order chứa OrderDetails và kết hợp với Item. Hình 1.6: lược đồ lớp
  18. Lư ợc đồ lớp có 3 loại quan hệ :  association (quan h ệ kết hợp) -- một quan hệ giữa các thể hiện của 2 lớp. Đây là một quan hệ kết hợp giữa hai lớp nếu một thể hiện của một lớp phải biết đến thể hiện khác làm việc với nó. Trong một lư ợc đồ, một quan hệ kết hợp là một liên kết, kết nối đến hai lớp.  aggregation (quan h ệ thu nạp)-- mối kết hợp trong một lớp thuộc về một tập hợp. Một quan hệ thu nạp có một h ình thoi cuối điểm được xem là toàn thể. Trong lược đồ này,Order có một tập hợp là OrderDetails.  generalization (quan h ệ tổng quát hoá)-- mối liên kết kế thừa diển tả một lớp là m ột lớp cha (superclass) của lớp khác. Quan hệ tổng quát hoá có một hình tam giác biểu diễn lớp cha. Payment là lớp cha của Cash, Check, và Credit. Một mối kết hợp có hai đầu giới hạn. Một đầu có thể có một tên vai trò (role name) để lọc ra tính tự nhiên của mối kết hợp. Ví dụ,OrderDetail là một đường mẫu của Order. n avigability (tính đ ịnh hướng) : mũi tên trong quan hệ kết hợp hiển thị h ướng quan hệ có thể xem xét và truy vấn. OrderDetail có thể truy vấn về mẫu (Item) của nó nhưng không thông qua cách khác. Trong trư ờng hợp này, OrderDetail có Item. Quan hệ kết hợp có mũi tên có tính đ ịnh hướng . multiplicity (b ản số ) của một đầu quan hệ là số thể hiện của lớp kết hợp với một đầu khác. Bản số là một số hoặc một dãy số. Ví dụ : một Order chỉ có một Customer, nhưng một Customer có nhiều Orders.
  19. Bản số Giải thích 0 ho ặc 1 thể hiện. 0..1 0..* hoặc * Không giới hạn số thể hiện Chính xác 1 th ể hiện 1 Ít nh ất 1 thể hiện 1..* Hình 1.7: bản số trong lược đồ lớp Mỗi lược đồ lớp có các lớp, các quan hệ, và các b ản số. Tính định hướng và các vai trò là các m ẫu tuỳ chọn đặt trong lư ợc đồ để làm sáng tỏ. Chi tiết lược đồ lớp Lược đồ lớp gồm các lớp, các liên kết, các bản số. Lược đồ lớp có thể biểu diễn nhiều thông tin.  compositions (thành phần)  class member visibility and scope (ph ạm vi và tầm vực của lớp th ành viên)  dependencies and constraints (phụ thuộc và ràng buộc)  interfaces (giao diện) Composition and aggregation (Thành phần và thu nạp) Quan hệ kết hợp trong đối tượng là phần mở rộng của quan hệ thu nạp. Th ành ph ần (Composition ) là quan hệ kết hợp với phần (part) thuộc về toàn bộ (whole), ph ần không tồn tại nếu không có to àn bộ. Thành ph ần được hiển thị bởi hình thoi đặc ở phía cuối to àn bộ.
  20. Trong lược đồ này biểu diễn rằng, một BoxOffice thuộc về một MovieTheater.Nếu bỏ MovieTheater th ì sẽ huỷ BoxOffice. T Hình 1.8:lược đồ th ành phần và thu nạp Lớp thông tin: tầm vực (visibility) và phạm vi (scope) Chú thích lớp là một hình chữ nhật gồm 3 phần : tên lớp, thuộc tính (attributes) và phương thức (operations). Thuộc tính và phương thức được gán theo phương thức truy xuất và ph ạm vi. Hình 1.9 : lớp thông tin tầm vự và phạm vi Ví d ụ minh hoạ cách sử dụng theo qui ước UML.
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2